// SPDX-License-Identifier: MIT
// Copyright (C) 2018-present iced project and contributors

use crate::iced_constants::IcedConstants;
use crate::iced_error::IcedError;
use core::iter::{ExactSizeIterator, FusedIterator, Iterator};
use core::{fmt, mem};

// GENERATOR-BEGIN: Mnemonic
// ⚠️This was generated by GENERATOR!🦹‍♂️
/// Mnemonic
#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
#[cfg_attr(not(feature = "exhaustive_enums"), non_exhaustive)]
#[allow(non_camel_case_types)]
#[allow(missing_docs)]
pub enum Mnemonic {
	INVALID = 0,
	Aaa = 1,
	Aad = 2,
	Aam = 3,
	Aas = 4,
	Adc = 5,
	Adcx = 6,
	Add = 7,
	Addpd = 8,
	Addps = 9,
	Addsd = 10,
	Addss = 11,
	Addsubpd = 12,
	Addsubps = 13,
	Adox = 14,
	Aesdec = 15,
	Aesdeclast = 16,
	Aesenc = 17,
	Aesenclast = 18,
	Aesimc = 19,
	Aeskeygenassist = 20,
	And = 21,
	Andn = 22,
	Andnpd = 23,
	Andnps = 24,
	Andpd = 25,
	Andps = 26,
	Arpl = 27,
	Bextr = 28,
	Blcfill = 29,
	Blci = 30,
	Blcic = 31,
	Blcmsk = 32,
	Blcs = 33,
	Blendpd = 34,
	Blendps = 35,
	Blendvpd = 36,
	Blendvps = 37,
	Blsfill = 38,
	Blsi = 39,
	Blsic = 40,
	Blsmsk = 41,
	Blsr = 42,
	Bndcl = 43,
	Bndcn = 44,
	Bndcu = 45,
	Bndldx = 46,
	Bndmk = 47,
	Bndmov = 48,
	Bndstx = 49,
	Bound = 50,
	Bsf = 51,
	Bsr = 52,
	Bswap = 53,
	Bt = 54,
	Btc = 55,
	Btr = 56,
	Bts = 57,
	Bzhi = 58,
	Call = 59,
	Cbw = 60,
	Cdq = 61,
	Cdqe = 62,
	Cl1invmb = 63,
	Clac = 64,
	Clc = 65,
	Cld = 66,
	Cldemote = 67,
	Clflush = 68,
	Clflushopt = 69,
	Clgi = 70,
	Cli = 71,
	Clrssbsy = 72,
	Clts = 73,
	Clwb = 74,
	Clzero = 75,
	Cmc = 76,
	Cmova = 77,
	Cmovae = 78,
	Cmovb = 79,
	Cmovbe = 80,
	Cmove = 81,
	Cmovg = 82,
	Cmovge = 83,
	Cmovl = 84,
	Cmovle = 85,
	Cmovne = 86,
	Cmovno = 87,
	Cmovnp = 88,
	Cmovns = 89,
	Cmovo = 90,
	Cmovp = 91,
	Cmovs = 92,
	Cmp = 93,
	Cmppd = 94,
	Cmpps = 95,
	Cmpsb = 96,
	Cmpsd = 97,
	Cmpsq = 98,
	Cmpss = 99,
	Cmpsw = 100,
	Cmpxchg = 101,
	Cmpxchg16b = 102,
	Cmpxchg8b = 103,
	Comisd = 104,
	Comiss = 105,
	Cpuid = 106,
	Cqo = 107,
	Crc32 = 108,
	Cvtdq2pd = 109,
	Cvtdq2ps = 110,
	Cvtpd2dq = 111,
	Cvtpd2pi = 112,
	Cvtpd2ps = 113,
	Cvtpi2pd = 114,
	Cvtpi2ps = 115,
	Cvtps2dq = 116,
	Cvtps2pd = 117,
	Cvtps2pi = 118,
	Cvtsd2si = 119,
	Cvtsd2ss = 120,
	Cvtsi2sd = 121,
	Cvtsi2ss = 122,
	Cvtss2sd = 123,
	Cvtss2si = 124,
	Cvttpd2dq = 125,
	Cvttpd2pi = 126,
	Cvttps2dq = 127,
	Cvttps2pi = 128,
	Cvttsd2si = 129,
	Cvttss2si = 130,
	Cwd = 131,
	Cwde = 132,
	Daa = 133,
	Das = 134,
	Db = 135,
	Dd = 136,
	Dec = 137,
	Div = 138,
	Divpd = 139,
	Divps = 140,
	Divsd = 141,
	Divss = 142,
	Dppd = 143,
	Dpps = 144,
	Dq = 145,
	Dw = 146,
	Emms = 147,
	Encls = 148,
	Enclu = 149,
	Enclv = 150,
	Endbr32 = 151,
	Endbr64 = 152,
	Enqcmd = 153,
	Enqcmds = 154,
	Enter = 155,
	Extractps = 156,
	Extrq = 157,
	F2xm1 = 158,
	Fabs = 159,
	Fadd = 160,
	Faddp = 161,
	Fbld = 162,
	Fbstp = 163,
	Fchs = 164,
	Fclex = 165,
	Fcmovb = 166,
	Fcmovbe = 167,
	Fcmove = 168,
	Fcmovnb = 169,
	Fcmovnbe = 170,
	Fcmovne = 171,
	Fcmovnu = 172,
	Fcmovu = 173,
	Fcom = 174,
	Fcomi = 175,
	Fcomip = 176,
	Fcomp = 177,
	Fcompp = 178,
	Fcos = 179,
	Fdecstp = 180,
	Fdisi = 181,
	Fdiv = 182,
	Fdivp = 183,
	Fdivr = 184,
	Fdivrp = 185,
	Femms = 186,
	Feni = 187,
	Ffree = 188,
	Ffreep = 189,
	Fiadd = 190,
	Ficom = 191,
	Ficomp = 192,
	Fidiv = 193,
	Fidivr = 194,
	Fild = 195,
	Fimul = 196,
	Fincstp = 197,
	Finit = 198,
	Fist = 199,
	Fistp = 200,
	Fisttp = 201,
	Fisub = 202,
	Fisubr = 203,
	Fld = 204,
	Fld1 = 205,
	Fldcw = 206,
	Fldenv = 207,
	Fldl2e = 208,
	Fldl2t = 209,
	Fldlg2 = 210,
	Fldln2 = 211,
	Fldpi = 212,
	Fldz = 213,
	Fmul = 214,
	Fmulp = 215,
	Fnclex = 216,
	Fndisi = 217,
	Fneni = 218,
	Fninit = 219,
	Fnop = 220,
	Fnsave = 221,
	Fnsetpm = 222,
	Fnstcw = 223,
	Fnstenv = 224,
	Fnstsw = 225,
	Fpatan = 226,
	Fprem = 227,
	Fprem1 = 228,
	Fptan = 229,
	Frndint = 230,
	Frstor = 231,
	Frstpm = 232,
	Fsave = 233,
	Fscale = 234,
	Fsetpm = 235,
	Fsin = 236,
	Fsincos = 237,
	Fsqrt = 238,
	Fst = 239,
	Fstcw = 240,
	Fstdw = 241,
	Fstenv = 242,
	Fstp = 243,
	Fstpnce = 244,
	Fstsg = 245,
	Fstsw = 246,
	Fsub = 247,
	Fsubp = 248,
	Fsubr = 249,
	Fsubrp = 250,
	Ftst = 251,
	Fucom = 252,
	Fucomi = 253,
	Fucomip = 254,
	Fucomp = 255,
	Fucompp = 256,
	Fxam = 257,
	Fxch = 258,
	Fxrstor = 259,
	Fxrstor64 = 260,
	Fxsave = 261,
	Fxsave64 = 262,
	Fxtract = 263,
	Fyl2x = 264,
	Fyl2xp1 = 265,
	Getsec = 266,
	Gf2p8affineinvqb = 267,
	Gf2p8affineqb = 268,
	Gf2p8mulb = 269,
	Haddpd = 270,
	Haddps = 271,
	Hlt = 272,
	Hsubpd = 273,
	Hsubps = 274,
	Ibts = 275,
	Idiv = 276,
	Imul = 277,
	In = 278,
	Inc = 279,
	Incsspd = 280,
	Incsspq = 281,
	Insb = 282,
	Insd = 283,
	Insertps = 284,
	Insertq = 285,
	Insw = 286,
	Int = 287,
	Int1 = 288,
	Into = 289,
	Invd = 290,
	Invept = 291,
	Invlpg = 292,
	Invlpga = 293,
	Invpcid = 294,
	Invvpid = 295,
	Iret = 296,
	Ja = 297,
	Jae = 298,
	Jb = 299,
	Jbe = 300,
	Jcxz = 301,
	Je = 302,
	Jecxz = 303,
	Jg = 304,
	Jge = 305,
	Jl = 306,
	Jle = 307,
	Jmp = 308,
	Jmpe = 309,
	Jne = 310,
	Jno = 311,
	Jnp = 312,
	Jns = 313,
	Jo = 314,
	Jp = 315,
	Jrcxz = 316,
	Js = 317,
	Kaddb = 318,
	Kaddd = 319,
	Kaddq = 320,
	Kaddw = 321,
	Kandb = 322,
	Kandd = 323,
	Kandnb = 324,
	Kandnd = 325,
	Kandnq = 326,
	Kandnw = 327,
	Kandq = 328,
	Kandw = 329,
	Kmovb = 330,
	Kmovd = 331,
	Kmovq = 332,
	Kmovw = 333,
	Knotb = 334,
	Knotd = 335,
	Knotq = 336,
	Knotw = 337,
	Korb = 338,
	Kord = 339,
	Korq = 340,
	Kortestb = 341,
	Kortestd = 342,
	Kortestq = 343,
	Kortestw = 344,
	Korw = 345,
	Kshiftlb = 346,
	Kshiftld = 347,
	Kshiftlq = 348,
	Kshiftlw = 349,
	Kshiftrb = 350,
	Kshiftrd = 351,
	Kshiftrq = 352,
	Kshiftrw = 353,
	Ktestb = 354,
	Ktestd = 355,
	Ktestq = 356,
	Ktestw = 357,
	Kunpckbw = 358,
	Kunpckdq = 359,
	Kunpckwd = 360,
	Kxnorb = 361,
	Kxnord = 362,
	Kxnorq = 363,
	Kxnorw = 364,
	Kxorb = 365,
	Kxord = 366,
	Kxorq = 367,
	Kxorw = 368,
	Lahf = 369,
	Lar = 370,
	Lddqu = 371,
	Ldmxcsr = 372,
	Lds = 373,
	Lea = 374,
	Leave = 375,
	Les = 376,
	Lfence = 377,
	Lfs = 378,
	Lgdt = 379,
	Lgs = 380,
	Lidt = 381,
	Lldt = 382,
	Llwpcb = 383,
	Lmsw = 384,
	Loadall = 385,
	Lodsb = 386,
	Lodsd = 387,
	Lodsq = 388,
	Lodsw = 389,
	Loop = 390,
	Loope = 391,
	Loopne = 392,
	Lsl = 393,
	Lss = 394,
	Ltr = 395,
	Lwpins = 396,
	Lwpval = 397,
	Lzcnt = 398,
	Maskmovdqu = 399,
	Maskmovq = 400,
	Maxpd = 401,
	Maxps = 402,
	Maxsd = 403,
	Maxss = 404,
	Mcommit = 405,
	Mfence = 406,
	Minpd = 407,
	Minps = 408,
	Minsd = 409,
	Minss = 410,
	Monitor = 411,
	Monitorx = 412,
	Montmul = 413,
	Mov = 414,
	Movapd = 415,
	Movaps = 416,
	Movbe = 417,
	Movd = 418,
	Movddup = 419,
	Movdir64b = 420,
	Movdiri = 421,
	Movdq2q = 422,
	Movdqa = 423,
	Movdqu = 424,
	Movhlps = 425,
	Movhpd = 426,
	Movhps = 427,
	Movlhps = 428,
	Movlpd = 429,
	Movlps = 430,
	Movmskpd = 431,
	Movmskps = 432,
	Movntdq = 433,
	Movntdqa = 434,
	Movnti = 435,
	Movntpd = 436,
	Movntps = 437,
	Movntq = 438,
	Movntsd = 439,
	Movntss = 440,
	Movq = 441,
	Movq2dq = 442,
	Movsb = 443,
	Movsd = 444,
	Movshdup = 445,
	Movsldup = 446,
	Movsq = 447,
	Movss = 448,
	Movsw = 449,
	Movsx = 450,
	Movsxd = 451,
	Movupd = 452,
	Movups = 453,
	Movzx = 454,
	Mpsadbw = 455,
	Mul = 456,
	Mulpd = 457,
	Mulps = 458,
	Mulsd = 459,
	Mulss = 460,
	Mulx = 461,
	Mwait = 462,
	Mwaitx = 463,
	Neg = 464,
	Nop = 465,
	Not = 466,
	Or = 467,
	Orpd = 468,
	Orps = 469,
	Out = 470,
	Outsb = 471,
	Outsd = 472,
	Outsw = 473,
	Pabsb = 474,
	Pabsd = 475,
	Pabsw = 476,
	Packssdw = 477,
	Packsswb = 478,
	Packusdw = 479,
	Packuswb = 480,
	Paddb = 481,
	Paddd = 482,
	Paddq = 483,
	Paddsb = 484,
	Paddsw = 485,
	Paddusb = 486,
	Paddusw = 487,
	Paddw = 488,
	Palignr = 489,
	Pand = 490,
	Pandn = 491,
	Pause = 492,
	Pavgb = 493,
	Pavgusb = 494,
	Pavgw = 495,
	Pblendvb = 496,
	Pblendw = 497,
	Pclmulqdq = 498,
	Pcmpeqb = 499,
	Pcmpeqd = 500,
	Pcmpeqq = 501,
	Pcmpeqw = 502,
	Pcmpestri = 503,
	Pcmpestri64 = 504,
	Pcmpestrm = 505,
	Pcmpestrm64 = 506,
	Pcmpgtb = 507,
	Pcmpgtd = 508,
	Pcmpgtq = 509,
	Pcmpgtw = 510,
	Pcmpistri = 511,
	Pcmpistrm = 512,
	Pcommit = 513,
	Pconfig = 514,
	Pdep = 515,
	Pext = 516,
	Pextrb = 517,
	Pextrd = 518,
	Pextrq = 519,
	Pextrw = 520,
	Pf2id = 521,
	Pf2iw = 522,
	Pfacc = 523,
	Pfadd = 524,
	Pfcmpeq = 525,
	Pfcmpge = 526,
	Pfcmpgt = 527,
	Pfmax = 528,
	Pfmin = 529,
	Pfmul = 530,
	Pfnacc = 531,
	Pfpnacc = 532,
	Pfrcp = 533,
	Pfrcpit1 = 534,
	Pfrcpit2 = 535,
	Pfrcpv = 536,
	Pfrsqit1 = 537,
	Pfrsqrt = 538,
	Pfrsqrtv = 539,
	Pfsub = 540,
	Pfsubr = 541,
	Phaddd = 542,
	Phaddsw = 543,
	Phaddw = 544,
	Phminposuw = 545,
	Phsubd = 546,
	Phsubsw = 547,
	Phsubw = 548,
	Pi2fd = 549,
	Pi2fw = 550,
	Pinsrb = 551,
	Pinsrd = 552,
	Pinsrq = 553,
	Pinsrw = 554,
	Pmaddubsw = 555,
	Pmaddwd = 556,
	Pmaxsb = 557,
	Pmaxsd = 558,
	Pmaxsw = 559,
	Pmaxub = 560,
	Pmaxud = 561,
	Pmaxuw = 562,
	Pminsb = 563,
	Pminsd = 564,
	Pminsw = 565,
	Pminub = 566,
	Pminud = 567,
	Pminuw = 568,
	Pmovmskb = 569,
	Pmovsxbd = 570,
	Pmovsxbq = 571,
	Pmovsxbw = 572,
	Pmovsxdq = 573,
	Pmovsxwd = 574,
	Pmovsxwq = 575,
	Pmovzxbd = 576,
	Pmovzxbq = 577,
	Pmovzxbw = 578,
	Pmovzxdq = 579,
	Pmovzxwd = 580,
	Pmovzxwq = 581,
	Pmuldq = 582,
	Pmulhrsw = 583,
	Pmulhrw = 584,
	Pmulhuw = 585,
	Pmulhw = 586,
	Pmulld = 587,
	Pmullw = 588,
	Pmuludq = 589,
	Pop = 590,
	Popa = 591,
	Popcnt = 592,
	Popf = 593,
	Por = 594,
	Prefetch = 595,
	Prefetchnta = 596,
	Prefetcht0 = 597,
	Prefetcht1 = 598,
	Prefetcht2 = 599,
	Prefetchw = 600,
	Prefetchwt1 = 601,
	Psadbw = 602,
	Pshufb = 603,
	Pshufd = 604,
	Pshufhw = 605,
	Pshuflw = 606,
	Pshufw = 607,
	Psignb = 608,
	Psignd = 609,
	Psignw = 610,
	Pslld = 611,
	Pslldq = 612,
	Psllq = 613,
	Psllw = 614,
	Psrad = 615,
	Psraw = 616,
	Psrld = 617,
	Psrldq = 618,
	Psrlq = 619,
	Psrlw = 620,
	Psubb = 621,
	Psubd = 622,
	Psubq = 623,
	Psubsb = 624,
	Psubsw = 625,
	Psubusb = 626,
	Psubusw = 627,
	Psubw = 628,
	Pswapd = 629,
	Ptest = 630,
	Ptwrite = 631,
	Punpckhbw = 632,
	Punpckhdq = 633,
	Punpckhqdq = 634,
	Punpckhwd = 635,
	Punpcklbw = 636,
	Punpckldq = 637,
	Punpcklqdq = 638,
	Punpcklwd = 639,
	Push = 640,
	Pusha = 641,
	Pushf = 642,
	Pxor = 643,
	Rcl = 644,
	Rcpps = 645,
	Rcpss = 646,
	Rcr = 647,
	Rdfsbase = 648,
	Rdgsbase = 649,
	Rdmsr = 650,
	Rdpid = 651,
	Rdpkru = 652,
	Rdpmc = 653,
	Rdpru = 654,
	Rdrand = 655,
	Rdseed = 656,
	Rdsspd = 657,
	Rdsspq = 658,
	Rdtsc = 659,
	Rdtscp = 660,
	Reservednop = 661,
	Ret = 662,
	Retf = 663,
	Rol = 664,
	Ror = 665,
	Rorx = 666,
	Roundpd = 667,
	Roundps = 668,
	Roundsd = 669,
	Roundss = 670,
	Rsm = 671,
	Rsqrtps = 672,
	Rsqrtss = 673,
	Rstorssp = 674,
	Sahf = 675,
	Sal = 676,
	Salc = 677,
	Sar = 678,
	Sarx = 679,
	Saveprevssp = 680,
	Sbb = 681,
	Scasb = 682,
	Scasd = 683,
	Scasq = 684,
	Scasw = 685,
	Seta = 686,
	Setae = 687,
	Setb = 688,
	Setbe = 689,
	Sete = 690,
	Setg = 691,
	Setge = 692,
	Setl = 693,
	Setle = 694,
	Setne = 695,
	Setno = 696,
	Setnp = 697,
	Setns = 698,
	Seto = 699,
	Setp = 700,
	Sets = 701,
	Setssbsy = 702,
	Sfence = 703,
	Sgdt = 704,
	Sha1msg1 = 705,
	Sha1msg2 = 706,
	Sha1nexte = 707,
	Sha1rnds4 = 708,
	Sha256msg1 = 709,
	Sha256msg2 = 710,
	Sha256rnds2 = 711,
	Shl = 712,
	Shld = 713,
	Shlx = 714,
	Shr = 715,
	Shrd = 716,
	Shrx = 717,
	Shufpd = 718,
	Shufps = 719,
	Sidt = 720,
	Skinit = 721,
	Sldt = 722,
	Slwpcb = 723,
	Smsw = 724,
	Sqrtpd = 725,
	Sqrtps = 726,
	Sqrtsd = 727,
	Sqrtss = 728,
	Stac = 729,
	Stc = 730,
	Std = 731,
	Stgi = 732,
	Sti = 733,
	Stmxcsr = 734,
	Stosb = 735,
	Stosd = 736,
	Stosq = 737,
	Stosw = 738,
	Str = 739,
	Sub = 740,
	Subpd = 741,
	Subps = 742,
	Subsd = 743,
	Subss = 744,
	Swapgs = 745,
	Syscall = 746,
	Sysenter = 747,
	Sysexit = 748,
	Sysret = 749,
	T1mskc = 750,
	Test = 751,
	Tpause = 752,
	Tzcnt = 753,
	Tzmsk = 754,
	Ucomisd = 755,
	Ucomiss = 756,
	Ud0 = 757,
	Ud1 = 758,
	Ud2 = 759,
	Umonitor = 760,
	Umov = 761,
	Umwait = 762,
	Unpckhpd = 763,
	Unpckhps = 764,
	Unpcklpd = 765,
	Unpcklps = 766,
	V4fmaddps = 767,
	V4fmaddss = 768,
	V4fnmaddps = 769,
	V4fnmaddss = 770,
	Vaddpd = 771,
	Vaddps = 772,
	Vaddsd = 773,
	Vaddss = 774,
	Vaddsubpd = 775,
	Vaddsubps = 776,
	Vaesdec = 777,
	Vaesdeclast = 778,
	Vaesenc = 779,
	Vaesenclast = 780,
	Vaesimc = 781,
	Vaeskeygenassist = 782,
	Valignd = 783,
	Valignq = 784,
	Vandnpd = 785,
	Vandnps = 786,
	Vandpd = 787,
	Vandps = 788,
	Vblendmpd = 789,
	Vblendmps = 790,
	Vblendpd = 791,
	Vblendps = 792,
	Vblendvpd = 793,
	Vblendvps = 794,
	Vbroadcastf128 = 795,
	Vbroadcastf32x2 = 796,
	Vbroadcastf32x4 = 797,
	Vbroadcastf32x8 = 798,
	Vbroadcastf64x2 = 799,
	Vbroadcastf64x4 = 800,
	Vbroadcasti128 = 801,
	Vbroadcasti32x2 = 802,
	Vbroadcasti32x4 = 803,
	Vbroadcasti32x8 = 804,
	Vbroadcasti64x2 = 805,
	Vbroadcasti64x4 = 806,
	Vbroadcastsd = 807,
	Vbroadcastss = 808,
	Vcmppd = 809,
	Vcmpps = 810,
	Vcmpsd = 811,
	Vcmpss = 812,
	Vcomisd = 813,
	Vcomiss = 814,
	Vcompresspd = 815,
	Vcompressps = 816,
	Vcvtdq2pd = 817,
	Vcvtdq2ps = 818,
	Vcvtne2ps2bf16 = 819,
	Vcvtneps2bf16 = 820,
	Vcvtpd2dq = 821,
	Vcvtpd2ps = 822,
	Vcvtpd2qq = 823,
	Vcvtpd2udq = 824,
	Vcvtpd2uqq = 825,
	Vcvtph2ps = 826,
	Vcvtps2dq = 827,
	Vcvtps2pd = 828,
	Vcvtps2ph = 829,
	Vcvtps2qq = 830,
	Vcvtps2udq = 831,
	Vcvtps2uqq = 832,
	Vcvtqq2pd = 833,
	Vcvtqq2ps = 834,
	Vcvtsd2si = 835,
	Vcvtsd2ss = 836,
	Vcvtsd2usi = 837,
	Vcvtsi2sd = 838,
	Vcvtsi2ss = 839,
	Vcvtss2sd = 840,
	Vcvtss2si = 841,
	Vcvtss2usi = 842,
	Vcvttpd2dq = 843,
	Vcvttpd2qq = 844,
	Vcvttpd2udq = 845,
	Vcvttpd2uqq = 846,
	Vcvttps2dq = 847,
	Vcvttps2qq = 848,
	Vcvttps2udq = 849,
	Vcvttps2uqq = 850,
	Vcvttsd2si = 851,
	Vcvttsd2usi = 852,
	Vcvttss2si = 853,
	Vcvttss2usi = 854,
	Vcvtudq2pd = 855,
	Vcvtudq2ps = 856,
	Vcvtuqq2pd = 857,
	Vcvtuqq2ps = 858,
	Vcvtusi2sd = 859,
	Vcvtusi2ss = 860,
	Vdbpsadbw = 861,
	Vdivpd = 862,
	Vdivps = 863,
	Vdivsd = 864,
	Vdivss = 865,
	Vdpbf16ps = 866,
	Vdppd = 867,
	Vdpps = 868,
	Verr = 869,
	Verw = 870,
	Vexp2pd = 871,
	Vexp2ps = 872,
	Vexpandpd = 873,
	Vexpandps = 874,
	Vextractf128 = 875,
	Vextractf32x4 = 876,
	Vextractf32x8 = 877,
	Vextractf64x2 = 878,
	Vextractf64x4 = 879,
	Vextracti128 = 880,
	Vextracti32x4 = 881,
	Vextracti32x8 = 882,
	Vextracti64x2 = 883,
	Vextracti64x4 = 884,
	Vextractps = 885,
	Vfixupimmpd = 886,
	Vfixupimmps = 887,
	Vfixupimmsd = 888,
	Vfixupimmss = 889,
	Vfmadd132pd = 890,
	Vfmadd132ps = 891,
	Vfmadd132sd = 892,
	Vfmadd132ss = 893,
	Vfmadd213pd = 894,
	Vfmadd213ps = 895,
	Vfmadd213sd = 896,
	Vfmadd213ss = 897,
	Vfmadd231pd = 898,
	Vfmadd231ps = 899,
	Vfmadd231sd = 900,
	Vfmadd231ss = 901,
	Vfmaddpd = 902,
	Vfmaddps = 903,
	Vfmaddsd = 904,
	Vfmaddss = 905,
	Vfmaddsub132pd = 906,
	Vfmaddsub132ps = 907,
	Vfmaddsub213pd = 908,
	Vfmaddsub213ps = 909,
	Vfmaddsub231pd = 910,
	Vfmaddsub231ps = 911,
	Vfmaddsubpd = 912,
	Vfmaddsubps = 913,
	Vfmsub132pd = 914,
	Vfmsub132ps = 915,
	Vfmsub132sd = 916,
	Vfmsub132ss = 917,
	Vfmsub213pd = 918,
	Vfmsub213ps = 919,
	Vfmsub213sd = 920,
	Vfmsub213ss = 921,
	Vfmsub231pd = 922,
	Vfmsub231ps = 923,
	Vfmsub231sd = 924,
	Vfmsub231ss = 925,
	Vfmsubadd132pd = 926,
	Vfmsubadd132ps = 927,
	Vfmsubadd213pd = 928,
	Vfmsubadd213ps = 929,
	Vfmsubadd231pd = 930,
	Vfmsubadd231ps = 931,
	Vfmsubaddpd = 932,
	Vfmsubaddps = 933,
	Vfmsubpd = 934,
	Vfmsubps = 935,
	Vfmsubsd = 936,
	Vfmsubss = 937,
	Vfnmadd132pd = 938,
	Vfnmadd132ps = 939,
	Vfnmadd132sd = 940,
	Vfnmadd132ss = 941,
	Vfnmadd213pd = 942,
	Vfnmadd213ps = 943,
	Vfnmadd213sd = 944,
	Vfnmadd213ss = 945,
	Vfnmadd231pd = 946,
	Vfnmadd231ps = 947,
	Vfnmadd231sd = 948,
	Vfnmadd231ss = 949,
	Vfnmaddpd = 950,
	Vfnmaddps = 951,
	Vfnmaddsd = 952,
	Vfnmaddss = 953,
	Vfnmsub132pd = 954,
	Vfnmsub132ps = 955,
	Vfnmsub132sd = 956,
	Vfnmsub132ss = 957,
	Vfnmsub213pd = 958,
	Vfnmsub213ps = 959,
	Vfnmsub213sd = 960,
	Vfnmsub213ss = 961,
	Vfnmsub231pd = 962,
	Vfnmsub231ps = 963,
	Vfnmsub231sd = 964,
	Vfnmsub231ss = 965,
	Vfnmsubpd = 966,
	Vfnmsubps = 967,
	Vfnmsubsd = 968,
	Vfnmsubss = 969,
	Vfpclasspd = 970,
	Vfpclassps = 971,
	Vfpclasssd = 972,
	Vfpclassss = 973,
	Vfrczpd = 974,
	Vfrczps = 975,
	Vfrczsd = 976,
	Vfrczss = 977,
	Vgatherdpd = 978,
	Vgatherdps = 979,
	Vgatherpf0dpd = 980,
	Vgatherpf0dps = 981,
	Vgatherpf0qpd = 982,
	Vgatherpf0qps = 983,
	Vgatherpf1dpd = 984,
	Vgatherpf1dps = 985,
	Vgatherpf1qpd = 986,
	Vgatherpf1qps = 987,
	Vgatherqpd = 988,
	Vgatherqps = 989,
	Vgetexppd = 990,
	Vgetexpps = 991,
	Vgetexpsd = 992,
	Vgetexpss = 993,
	Vgetmantpd = 994,
	Vgetmantps = 995,
	Vgetmantsd = 996,
	Vgetmantss = 997,
	Vgf2p8affineinvqb = 998,
	Vgf2p8affineqb = 999,
	Vgf2p8mulb = 1000,
	Vhaddpd = 1001,
	Vhaddps = 1002,
	Vhsubpd = 1003,
	Vhsubps = 1004,
	Vinsertf128 = 1005,
	Vinsertf32x4 = 1006,
	Vinsertf32x8 = 1007,
	Vinsertf64x2 = 1008,
	Vinsertf64x4 = 1009,
	Vinserti128 = 1010,
	Vinserti32x4 = 1011,
	Vinserti32x8 = 1012,
	Vinserti64x2 = 1013,
	Vinserti64x4 = 1014,
	Vinsertps = 1015,
	Vlddqu = 1016,
	Vldmxcsr = 1017,
	Vmaskmovdqu = 1018,
	Vmaskmovpd = 1019,
	Vmaskmovps = 1020,
	Vmaxpd = 1021,
	Vmaxps = 1022,
	Vmaxsd = 1023,
	Vmaxss = 1024,
	Vmcall = 1025,
	Vmclear = 1026,
	Vmfunc = 1027,
	Vminpd = 1028,
	Vminps = 1029,
	Vminsd = 1030,
	Vminss = 1031,
	Vmlaunch = 1032,
	Vmload = 1033,
	Vmmcall = 1034,
	Vmovapd = 1035,
	Vmovaps = 1036,
	Vmovd = 1037,
	Vmovddup = 1038,
	Vmovdqa = 1039,
	Vmovdqa32 = 1040,
	Vmovdqa64 = 1041,
	Vmovdqu = 1042,
	Vmovdqu16 = 1043,
	Vmovdqu32 = 1044,
	Vmovdqu64 = 1045,
	Vmovdqu8 = 1046,
	Vmovhlps = 1047,
	Vmovhpd = 1048,
	Vmovhps = 1049,
	Vmovlhps = 1050,
	Vmovlpd = 1051,
	Vmovlps = 1052,
	Vmovmskpd = 1053,
	Vmovmskps = 1054,
	Vmovntdq = 1055,
	Vmovntdqa = 1056,
	Vmovntpd = 1057,
	Vmovntps = 1058,
	Vmovq = 1059,
	Vmovsd = 1060,
	Vmovshdup = 1061,
	Vmovsldup = 1062,
	Vmovss = 1063,
	Vmovupd = 1064,
	Vmovups = 1065,
	Vmpsadbw = 1066,
	Vmptrld = 1067,
	Vmptrst = 1068,
	Vmread = 1069,
	Vmresume = 1070,
	Vmrun = 1071,
	Vmsave = 1072,
	Vmulpd = 1073,
	Vmulps = 1074,
	Vmulsd = 1075,
	Vmulss = 1076,
	Vmwrite = 1077,
	Vmxoff = 1078,
	Vmxon = 1079,
	Vorpd = 1080,
	Vorps = 1081,
	Vp2intersectd = 1082,
	Vp2intersectq = 1083,
	Vp4dpwssd = 1084,
	Vp4dpwssds = 1085,
	Vpabsb = 1086,
	Vpabsd = 1087,
	Vpabsq = 1088,
	Vpabsw = 1089,
	Vpackssdw = 1090,
	Vpacksswb = 1091,
	Vpackusdw = 1092,
	Vpackuswb = 1093,
	Vpaddb = 1094,
	Vpaddd = 1095,
	Vpaddq = 1096,
	Vpaddsb = 1097,
	Vpaddsw = 1098,
	Vpaddusb = 1099,
	Vpaddusw = 1100,
	Vpaddw = 1101,
	Vpalignr = 1102,
	Vpand = 1103,
	Vpandd = 1104,
	Vpandn = 1105,
	Vpandnd = 1106,
	Vpandnq = 1107,
	Vpandq = 1108,
	Vpavgb = 1109,
	Vpavgw = 1110,
	Vpblendd = 1111,
	Vpblendmb = 1112,
	Vpblendmd = 1113,
	Vpblendmq = 1114,
	Vpblendmw = 1115,
	Vpblendvb = 1116,
	Vpblendw = 1117,
	Vpbroadcastb = 1118,
	Vpbroadcastd = 1119,
	Vpbroadcastmb2q = 1120,
	Vpbroadcastmw2d = 1121,
	Vpbroadcastq = 1122,
	Vpbroadcastw = 1123,
	Vpclmulqdq = 1124,
	Vpcmov = 1125,
	Vpcmpb = 1126,
	Vpcmpd = 1127,
	Vpcmpeqb = 1128,
	Vpcmpeqd = 1129,
	Vpcmpeqq = 1130,
	Vpcmpeqw = 1131,
	Vpcmpestri = 1132,
	Vpcmpestri64 = 1133,
	Vpcmpestrm = 1134,
	Vpcmpestrm64 = 1135,
	Vpcmpgtb = 1136,
	Vpcmpgtd = 1137,
	Vpcmpgtq = 1138,
	Vpcmpgtw = 1139,
	Vpcmpistri = 1140,
	Vpcmpistrm = 1141,
	Vpcmpq = 1142,
	Vpcmpub = 1143,
	Vpcmpud = 1144,
	Vpcmpuq = 1145,
	Vpcmpuw = 1146,
	Vpcmpw = 1147,
	Vpcomb = 1148,
	Vpcomd = 1149,
	Vpcompressb = 1150,
	Vpcompressd = 1151,
	Vpcompressq = 1152,
	Vpcompressw = 1153,
	Vpcomq = 1154,
	Vpcomub = 1155,
	Vpcomud = 1156,
	Vpcomuq = 1157,
	Vpcomuw = 1158,
	Vpcomw = 1159,
	Vpconflictd = 1160,
	Vpconflictq = 1161,
	Vpdpbusd = 1162,
	Vpdpbusds = 1163,
	Vpdpwssd = 1164,
	Vpdpwssds = 1165,
	Vperm2f128 = 1166,
	Vperm2i128 = 1167,
	Vpermb = 1168,
	Vpermd = 1169,
	Vpermi2b = 1170,
	Vpermi2d = 1171,
	Vpermi2pd = 1172,
	Vpermi2ps = 1173,
	Vpermi2q = 1174,
	Vpermi2w = 1175,
	Vpermil2pd = 1176,
	Vpermil2ps = 1177,
	Vpermilpd = 1178,
	Vpermilps = 1179,
	Vpermpd = 1180,
	Vpermps = 1181,
	Vpermq = 1182,
	Vpermt2b = 1183,
	Vpermt2d = 1184,
	Vpermt2pd = 1185,
	Vpermt2ps = 1186,
	Vpermt2q = 1187,
	Vpermt2w = 1188,
	Vpermw = 1189,
	Vpexpandb = 1190,
	Vpexpandd = 1191,
	Vpexpandq = 1192,
	Vpexpandw = 1193,
	Vpextrb = 1194,
	Vpextrd = 1195,
	Vpextrq = 1196,
	Vpextrw = 1197,
	Vpgatherdd = 1198,
	Vpgatherdq = 1199,
	Vpgatherqd = 1200,
	Vpgatherqq = 1201,
	Vphaddbd = 1202,
	Vphaddbq = 1203,
	Vphaddbw = 1204,
	Vphaddd = 1205,
	Vphadddq = 1206,
	Vphaddsw = 1207,
	Vphaddubd = 1208,
	Vphaddubq = 1209,
	Vphaddubw = 1210,
	Vphaddudq = 1211,
	Vphadduwd = 1212,
	Vphadduwq = 1213,
	Vphaddw = 1214,
	Vphaddwd = 1215,
	Vphaddwq = 1216,
	Vphminposuw = 1217,
	Vphsubbw = 1218,
	Vphsubd = 1219,
	Vphsubdq = 1220,
	Vphsubsw = 1221,
	Vphsubw = 1222,
	Vphsubwd = 1223,
	Vpinsrb = 1224,
	Vpinsrd = 1225,
	Vpinsrq = 1226,
	Vpinsrw = 1227,
	Vplzcntd = 1228,
	Vplzcntq = 1229,
	Vpmacsdd = 1230,
	Vpmacsdqh = 1231,
	Vpmacsdql = 1232,
	Vpmacssdd = 1233,
	Vpmacssdqh = 1234,
	Vpmacssdql = 1235,
	Vpmacsswd = 1236,
	Vpmacssww = 1237,
	Vpmacswd = 1238,
	Vpmacsww = 1239,
	Vpmadcsswd = 1240,
	Vpmadcswd = 1241,
	Vpmadd52huq = 1242,
	Vpmadd52luq = 1243,
	Vpmaddubsw = 1244,
	Vpmaddwd = 1245,
	Vpmaskmovd = 1246,
	Vpmaskmovq = 1247,
	Vpmaxsb = 1248,
	Vpmaxsd = 1249,
	Vpmaxsq = 1250,
	Vpmaxsw = 1251,
	Vpmaxub = 1252,
	Vpmaxud = 1253,
	Vpmaxuq = 1254,
	Vpmaxuw = 1255,
	Vpminsb = 1256,
	Vpminsd = 1257,
	Vpminsq = 1258,
	Vpminsw = 1259,
	Vpminub = 1260,
	Vpminud = 1261,
	Vpminuq = 1262,
	Vpminuw = 1263,
	Vpmovb2m = 1264,
	Vpmovd2m = 1265,
	Vpmovdb = 1266,
	Vpmovdw = 1267,
	Vpmovm2b = 1268,
	Vpmovm2d = 1269,
	Vpmovm2q = 1270,
	Vpmovm2w = 1271,
	Vpmovmskb = 1272,
	Vpmovq2m = 1273,
	Vpmovqb = 1274,
	Vpmovqd = 1275,
	Vpmovqw = 1276,
	Vpmovsdb = 1277,
	Vpmovsdw = 1278,
	Vpmovsqb = 1279,
	Vpmovsqd = 1280,
	Vpmovsqw = 1281,
	Vpmovswb = 1282,
	Vpmovsxbd = 1283,
	Vpmovsxbq = 1284,
	Vpmovsxbw = 1285,
	Vpmovsxdq = 1286,
	Vpmovsxwd = 1287,
	Vpmovsxwq = 1288,
	Vpmovusdb = 1289,
	Vpmovusdw = 1290,
	Vpmovusqb = 1291,
	Vpmovusqd = 1292,
	Vpmovusqw = 1293,
	Vpmovuswb = 1294,
	Vpmovw2m = 1295,
	Vpmovwb = 1296,
	Vpmovzxbd = 1297,
	Vpmovzxbq = 1298,
	Vpmovzxbw = 1299,
	Vpmovzxdq = 1300,
	Vpmovzxwd = 1301,
	Vpmovzxwq = 1302,
	Vpmuldq = 1303,
	Vpmulhrsw = 1304,
	Vpmulhuw = 1305,
	Vpmulhw = 1306,
	Vpmulld = 1307,
	Vpmullq = 1308,
	Vpmullw = 1309,
	Vpmultishiftqb = 1310,
	Vpmuludq = 1311,
	Vpopcntb = 1312,
	Vpopcntd = 1313,
	Vpopcntq = 1314,
	Vpopcntw = 1315,
	Vpor = 1316,
	Vpord = 1317,
	Vporq = 1318,
	Vpperm = 1319,
	Vprold = 1320,
	Vprolq = 1321,
	Vprolvd = 1322,
	Vprolvq = 1323,
	Vprord = 1324,
	Vprorq = 1325,
	Vprorvd = 1326,
	Vprorvq = 1327,
	Vprotb = 1328,
	Vprotd = 1329,
	Vprotq = 1330,
	Vprotw = 1331,
	Vpsadbw = 1332,
	Vpscatterdd = 1333,
	Vpscatterdq = 1334,
	Vpscatterqd = 1335,
	Vpscatterqq = 1336,
	Vpshab = 1337,
	Vpshad = 1338,
	Vpshaq = 1339,
	Vpshaw = 1340,
	Vpshlb = 1341,
	Vpshld = 1342,
	Vpshldd = 1343,
	Vpshldq = 1344,
	Vpshldvd = 1345,
	Vpshldvq = 1346,
	Vpshldvw = 1347,
	Vpshldw = 1348,
	Vpshlq = 1349,
	Vpshlw = 1350,
	Vpshrdd = 1351,
	Vpshrdq = 1352,
	Vpshrdvd = 1353,
	Vpshrdvq = 1354,
	Vpshrdvw = 1355,
	Vpshrdw = 1356,
	Vpshufb = 1357,
	Vpshufbitqmb = 1358,
	Vpshufd = 1359,
	Vpshufhw = 1360,
	Vpshuflw = 1361,
	Vpsignb = 1362,
	Vpsignd = 1363,
	Vpsignw = 1364,
	Vpslld = 1365,
	Vpslldq = 1366,
	Vpsllq = 1367,
	Vpsllvd = 1368,
	Vpsllvq = 1369,
	Vpsllvw = 1370,
	Vpsllw = 1371,
	Vpsrad = 1372,
	Vpsraq = 1373,
	Vpsravd = 1374,
	Vpsravq = 1375,
	Vpsravw = 1376,
	Vpsraw = 1377,
	Vpsrld = 1378,
	Vpsrldq = 1379,
	Vpsrlq = 1380,
	Vpsrlvd = 1381,
	Vpsrlvq = 1382,
	Vpsrlvw = 1383,
	Vpsrlw = 1384,
	Vpsubb = 1385,
	Vpsubd = 1386,
	Vpsubq = 1387,
	Vpsubsb = 1388,
	Vpsubsw = 1389,
	Vpsubusb = 1390,
	Vpsubusw = 1391,
	Vpsubw = 1392,
	Vpternlogd = 1393,
	Vpternlogq = 1394,
	Vptest = 1395,
	Vptestmb = 1396,
	Vptestmd = 1397,
	Vptestmq = 1398,
	Vptestmw = 1399,
	Vptestnmb = 1400,
	Vptestnmd = 1401,
	Vptestnmq = 1402,
	Vptestnmw = 1403,
	Vpunpckhbw = 1404,
	Vpunpckhdq = 1405,
	Vpunpckhqdq = 1406,
	Vpunpckhwd = 1407,
	Vpunpcklbw = 1408,
	Vpunpckldq = 1409,
	Vpunpcklqdq = 1410,
	Vpunpcklwd = 1411,
	Vpxor = 1412,
	Vpxord = 1413,
	Vpxorq = 1414,
	Vrangepd = 1415,
	Vrangeps = 1416,
	Vrangesd = 1417,
	Vrangess = 1418,
	Vrcp14pd = 1419,
	Vrcp14ps = 1420,
	Vrcp14sd = 1421,
	Vrcp14ss = 1422,
	Vrcp28pd = 1423,
	Vrcp28ps = 1424,
	Vrcp28sd = 1425,
	Vrcp28ss = 1426,
	Vrcpps = 1427,
	Vrcpss = 1428,
	Vreducepd = 1429,
	Vreduceps = 1430,
	Vreducesd = 1431,
	Vreducess = 1432,
	Vrndscalepd = 1433,
	Vrndscaleps = 1434,
	Vrndscalesd = 1435,
	Vrndscaless = 1436,
	Vroundpd = 1437,
	Vroundps = 1438,
	Vroundsd = 1439,
	Vroundss = 1440,
	Vrsqrt14pd = 1441,
	Vrsqrt14ps = 1442,
	Vrsqrt14sd = 1443,
	Vrsqrt14ss = 1444,
	Vrsqrt28pd = 1445,
	Vrsqrt28ps = 1446,
	Vrsqrt28sd = 1447,
	Vrsqrt28ss = 1448,
	Vrsqrtps = 1449,
	Vrsqrtss = 1450,
	Vscalefpd = 1451,
	Vscalefps = 1452,
	Vscalefsd = 1453,
	Vscalefss = 1454,
	Vscatterdpd = 1455,
	Vscatterdps = 1456,
	Vscatterpf0dpd = 1457,
	Vscatterpf0dps = 1458,
	Vscatterpf0qpd = 1459,
	Vscatterpf0qps = 1460,
	Vscatterpf1dpd = 1461,
	Vscatterpf1dps = 1462,
	Vscatterpf1qpd = 1463,
	Vscatterpf1qps = 1464,
	Vscatterqpd = 1465,
	Vscatterqps = 1466,
	Vshuff32x4 = 1467,
	Vshuff64x2 = 1468,
	Vshufi32x4 = 1469,
	Vshufi64x2 = 1470,
	Vshufpd = 1471,
	Vshufps = 1472,
	Vsqrtpd = 1473,
	Vsqrtps = 1474,
	Vsqrtsd = 1475,
	Vsqrtss = 1476,
	Vstmxcsr = 1477,
	Vsubpd = 1478,
	Vsubps = 1479,
	Vsubsd = 1480,
	Vsubss = 1481,
	Vtestpd = 1482,
	Vtestps = 1483,
	Vucomisd = 1484,
	Vucomiss = 1485,
	Vunpckhpd = 1486,
	Vunpckhps = 1487,
	Vunpcklpd = 1488,
	Vunpcklps = 1489,
	Vxorpd = 1490,
	Vxorps = 1491,
	Vzeroall = 1492,
	Vzeroupper = 1493,
	Wait = 1494,
	Wbinvd = 1495,
	Wbnoinvd = 1496,
	Wrfsbase = 1497,
	Wrgsbase = 1498,
	Wrmsr = 1499,
	Wrpkru = 1500,
	Wrssd = 1501,
	Wrssq = 1502,
	Wrussd = 1503,
	Wrussq = 1504,
	Xabort = 1505,
	Xadd = 1506,
	Xbegin = 1507,
	Xbts = 1508,
	Xchg = 1509,
	Xcryptcbc = 1510,
	Xcryptcfb = 1511,
	Xcryptctr = 1512,
	Xcryptecb = 1513,
	Xcryptofb = 1514,
	Xend = 1515,
	Xgetbv = 1516,
	Xlatb = 1517,
	Xor = 1518,
	Xorpd = 1519,
	Xorps = 1520,
	Xrstor = 1521,
	Xrstor64 = 1522,
	Xrstors = 1523,
	Xrstors64 = 1524,
	Xsave = 1525,
	Xsave64 = 1526,
	Xsavec = 1527,
	Xsavec64 = 1528,
	Xsaveopt = 1529,
	Xsaveopt64 = 1530,
	Xsaves = 1531,
	Xsaves64 = 1532,
	Xsetbv = 1533,
	Xsha1 = 1534,
	Xsha256 = 1535,
	Xstore = 1536,
	Xtest = 1537,
	Rmpadjust = 1538,
	Rmpupdate = 1539,
	Psmash = 1540,
	Pvalidate = 1541,
	Serialize = 1542,
	Xsusldtrk = 1543,
	Xresldtrk = 1544,
	Invlpgb = 1545,
	Tlbsync = 1546,
	Vmgexit = 1547,
	Getsecq = 1548,
	Sysexitq = 1549,
	Ldtilecfg = 1550,
	Tilerelease = 1551,
	Sttilecfg = 1552,
	Tilezero = 1553,
	Tileloaddt1 = 1554,
	Tilestored = 1555,
	Tileloadd = 1556,
	Tdpbf16ps = 1557,
	Tdpbuud = 1558,
	Tdpbusd = 1559,
	Tdpbsud = 1560,
	Tdpbssd = 1561,
	Sysretq = 1562,
	Fnstdw = 1563,
	Fnstsg = 1564,
	Rdshr = 1565,
	Wrshr = 1566,
	Smint = 1567,
	Dmint = 1568,
	Rdm = 1569,
	Svdc = 1570,
	Rsdc = 1571,
	Svldt = 1572,
	Rsldt = 1573,
	Svts = 1574,
	Rsts = 1575,
	Bb0_reset = 1576,
	Bb1_reset = 1577,
	Cpu_write = 1578,
	Cpu_read = 1579,
	Altinst = 1580,
	Paveb = 1581,
	Paddsiw = 1582,
	Pmagw = 1583,
	Pdistib = 1584,
	Psubsiw = 1585,
	Pmvzb = 1586,
	Pmvnzb = 1587,
	Pmvlzb = 1588,
	Pmvgezb = 1589,
	Pmulhriw = 1590,
	Pmachriw = 1591,
	Ftstp = 1592,
	Frint2 = 1593,
	Frichop = 1594,
	Frinear = 1595,
	Undoc = 1596,
	Tdcall = 1597,
	Seamret = 1598,
	Seamops = 1599,
	Seamcall = 1600,
	Aesencwide128kl = 1601,
	Aesdecwide128kl = 1602,
	Aesencwide256kl = 1603,
	Aesdecwide256kl = 1604,
	Loadiwkey = 1605,
	Aesenc128kl = 1606,
	Aesdec128kl = 1607,
	Aesenc256kl = 1608,
	Aesdec256kl = 1609,
	Encodekey128 = 1610,
	Encodekey256 = 1611,
	Pushad = 1612,
	Popad = 1613,
	Pushfd = 1614,
	Pushfq = 1615,
	Popfd = 1616,
	Popfq = 1617,
	Iretd = 1618,
	Iretq = 1619,
	Int3 = 1620,
	Uiret = 1621,
	Testui = 1622,
	Clui = 1623,
	Stui = 1624,
	Senduipi = 1625,
	Hreset = 1626,
	Ccs_hash = 1627,
	Ccs_encrypt = 1628,
	Lkgs = 1629,
	Eretu = 1630,
	Erets = 1631,
	Storeall = 1632,
	Vaddph = 1633,
	Vaddsh = 1634,
	Vcmpph = 1635,
	Vcmpsh = 1636,
	Vcomish = 1637,
	Vcvtdq2ph = 1638,
	Vcvtpd2ph = 1639,
	Vcvtph2dq = 1640,
	Vcvtph2pd = 1641,
	Vcvtph2psx = 1642,
	Vcvtph2qq = 1643,
	Vcvtph2udq = 1644,
	Vcvtph2uqq = 1645,
	Vcvtph2uw = 1646,
	Vcvtph2w = 1647,
	Vcvtps2phx = 1648,
	Vcvtqq2ph = 1649,
	Vcvtsd2sh = 1650,
	Vcvtsh2sd = 1651,
	Vcvtsh2si = 1652,
	Vcvtsh2ss = 1653,
	Vcvtsh2usi = 1654,
	Vcvtsi2sh = 1655,
	Vcvtss2sh = 1656,
	Vcvttph2dq = 1657,
	Vcvttph2qq = 1658,
	Vcvttph2udq = 1659,
	Vcvttph2uqq = 1660,
	Vcvttph2uw = 1661,
	Vcvttph2w = 1662,
	Vcvttsh2si = 1663,
	Vcvttsh2usi = 1664,
	Vcvtudq2ph = 1665,
	Vcvtuqq2ph = 1666,
	Vcvtusi2sh = 1667,
	Vcvtuw2ph = 1668,
	Vcvtw2ph = 1669,
	Vdivph = 1670,
	Vdivsh = 1671,
	Vfcmaddcph = 1672,
	Vfmaddcph = 1673,
	Vfcmaddcsh = 1674,
	Vfmaddcsh = 1675,
	Vfcmulcph = 1676,
	Vfmulcph = 1677,
	Vfcmulcsh = 1678,
	Vfmulcsh = 1679,
	Vfmaddsub132ph = 1680,
	Vfmaddsub213ph = 1681,
	Vfmaddsub231ph = 1682,
	Vfmsubadd132ph = 1683,
	Vfmsubadd213ph = 1684,
	Vfmsubadd231ph = 1685,
	Vfmadd132ph = 1686,
	Vfmadd213ph = 1687,
	Vfmadd231ph = 1688,
	Vfnmadd132ph = 1689,
	Vfnmadd213ph = 1690,
	Vfnmadd231ph = 1691,
	Vfmadd132sh = 1692,
	Vfmadd213sh = 1693,
	Vfmadd231sh = 1694,
	Vfnmadd132sh = 1695,
	Vfnmadd213sh = 1696,
	Vfnmadd231sh = 1697,
	Vfmsub132ph = 1698,
	Vfmsub213ph = 1699,
	Vfmsub231ph = 1700,
	Vfnmsub132ph = 1701,
	Vfnmsub213ph = 1702,
	Vfnmsub231ph = 1703,
	Vfmsub132sh = 1704,
	Vfmsub213sh = 1705,
	Vfmsub231sh = 1706,
	Vfnmsub132sh = 1707,
	Vfnmsub213sh = 1708,
	Vfnmsub231sh = 1709,
	Vfpclassph = 1710,
	Vfpclasssh = 1711,
	Vgetexpph = 1712,
	Vgetexpsh = 1713,
	Vgetmantph = 1714,
	Vgetmantsh = 1715,
	Vmaxph = 1716,
	Vmaxsh = 1717,
	Vminph = 1718,
	Vminsh = 1719,
	Vmovsh = 1720,
	Vmovw = 1721,
	Vmulph = 1722,
	Vmulsh = 1723,
	Vrcpph = 1724,
	Vrcpsh = 1725,
	Vreduceph = 1726,
	Vreducesh = 1727,
	Vrndscaleph = 1728,
	Vrndscalesh = 1729,
	Vrsqrtph = 1730,
	Vrsqrtsh = 1731,
	Vscalefph = 1732,
	Vscalefsh = 1733,
	Vsqrtph = 1734,
	Vsqrtsh = 1735,
	Vsubph = 1736,
	Vsubsh = 1737,
	Vucomish = 1738,
	Rdudbg = 1739,
	Wrudbg = 1740,
	Clevict0 = 1741,
	Clevict1 = 1742,
	Delay = 1743,
	Jknzd = 1744,
	Jkzd = 1745,
	Kand = 1746,
	Kandn = 1747,
	Kandnr = 1748,
	Kconcath = 1749,
	Kconcatl = 1750,
	Kextract = 1751,
	Kmerge2l1h = 1752,
	Kmerge2l1l = 1753,
	Kmov = 1754,
	Knot = 1755,
	Kor = 1756,
	Kortest = 1757,
	Kxnor = 1758,
	Kxor = 1759,
	Spflt = 1760,
	Tzcnti = 1761,
	Vaddnpd = 1762,
	Vaddnps = 1763,
	Vaddsetsps = 1764,
	Vcvtfxpntdq2ps = 1765,
	Vcvtfxpntpd2dq = 1766,
	Vcvtfxpntpd2udq = 1767,
	Vcvtfxpntps2dq = 1768,
	Vcvtfxpntps2udq = 1769,
	Vcvtfxpntudq2ps = 1770,
	Vexp223ps = 1771,
	Vfixupnanpd = 1772,
	Vfixupnanps = 1773,
	Vfmadd233ps = 1774,
	Vgatherpf0hintdpd = 1775,
	Vgatherpf0hintdps = 1776,
	Vgmaxabsps = 1777,
	Vgmaxpd = 1778,
	Vgmaxps = 1779,
	Vgminpd = 1780,
	Vgminps = 1781,
	Vloadunpackhd = 1782,
	Vloadunpackhpd = 1783,
	Vloadunpackhps = 1784,
	Vloadunpackhq = 1785,
	Vloadunpackld = 1786,
	Vloadunpacklpd = 1787,
	Vloadunpacklps = 1788,
	Vloadunpacklq = 1789,
	Vlog2ps = 1790,
	Vmovnrapd = 1791,
	Vmovnraps = 1792,
	Vmovnrngoapd = 1793,
	Vmovnrngoaps = 1794,
	Vpackstorehd = 1795,
	Vpackstorehpd = 1796,
	Vpackstorehps = 1797,
	Vpackstorehq = 1798,
	Vpackstoreld = 1799,
	Vpackstorelpd = 1800,
	Vpackstorelps = 1801,
	Vpackstorelq = 1802,
	Vpadcd = 1803,
	Vpaddsetcd = 1804,
	Vpaddsetsd = 1805,
	Vpcmpltd = 1806,
	Vpermf32x4 = 1807,
	Vpmadd231d = 1808,
	Vpmadd233d = 1809,
	Vpmulhd = 1810,
	Vpmulhud = 1811,
	Vprefetch0 = 1812,
	Vprefetch1 = 1813,
	Vprefetch2 = 1814,
	Vprefetche0 = 1815,
	Vprefetche1 = 1816,
	Vprefetche2 = 1817,
	Vprefetchenta = 1818,
	Vprefetchnta = 1819,
	Vpsbbd = 1820,
	Vpsbbrd = 1821,
	Vpsubrd = 1822,
	Vpsubrsetbd = 1823,
	Vpsubsetbd = 1824,
	Vrcp23ps = 1825,
	Vrndfxpntpd = 1826,
	Vrndfxpntps = 1827,
	Vrsqrt23ps = 1828,
	Vscaleps = 1829,
	Vscatterpf0hintdpd = 1830,
	Vscatterpf0hintdps = 1831,
	Vsubrpd = 1832,
	Vsubrps = 1833,
	Xsha512 = 1834,
	Xstore_alt = 1835,
	Xsha512_alt = 1836,
	Zero_bytes = 1837,
	Aadd = 1838,
	Aand = 1839,
	Aor = 1840,
	Axor = 1841,
	Cmpbexadd = 1842,
	Cmpbxadd = 1843,
	Cmplexadd = 1844,
	Cmplxadd = 1845,
	Cmpnbexadd = 1846,
	Cmpnbxadd = 1847,
	Cmpnlexadd = 1848,
	Cmpnlxadd = 1849,
	Cmpnoxadd = 1850,
	Cmpnpxadd = 1851,
	Cmpnsxadd = 1852,
	Cmpnzxadd = 1853,
	Cmpoxadd = 1854,
	Cmppxadd = 1855,
	Cmpsxadd = 1856,
	Cmpzxadd = 1857,
	Prefetchit0 = 1858,
	Prefetchit1 = 1859,
	Rdmsrlist = 1860,
	Rmpquery = 1861,
	Tdpfp16ps = 1862,
	Vbcstnebf162ps = 1863,
	Vbcstnesh2ps = 1864,
	Vcvtneebf162ps = 1865,
	Vcvtneeph2ps = 1866,
	Vcvtneobf162ps = 1867,
	Vcvtneoph2ps = 1868,
	Vpdpbssd = 1869,
	Vpdpbssds = 1870,
	Vpdpbsud = 1871,
	Vpdpbsuds = 1872,
	Vpdpbuud = 1873,
	Vpdpbuuds = 1874,
	Wrmsrlist = 1875,
	Wrmsrns = 1876,
	Tcmmrlfp16ps = 1877,
	Tcmmimfp16ps = 1878,
	Pbndkb = 1879,
	Vpdpwsud = 1880,
	Vpdpwsuds = 1881,
	Vpdpwusd = 1882,
	Vpdpwusds = 1883,
	Vpdpwuud = 1884,
	Vpdpwuuds = 1885,
	Vsha512msg1 = 1886,
	Vsha512msg2 = 1887,
	Vsha512rnds2 = 1888,
	Vsm3msg1 = 1889,
	Vsm3msg2 = 1890,
	Vsm3rnds2 = 1891,
	Vsm4key4 = 1892,
	Vsm4rnds4 = 1893,
}
#[rustfmt::skip]
static GEN_DEBUG_MNEMONIC: [&str; 1894] = [
	"INVALID",
	"Aaa",
	"Aad",
	"Aam",
	"Aas",
	"Adc",
	"Adcx",
	"Add",
	"Addpd",
	"Addps",
	"Addsd",
	"Addss",
	"Addsubpd",
	"Addsubps",
	"Adox",
	"Aesdec",
	"Aesdeclast",
	"Aesenc",
	"Aesenclast",
	"Aesimc",
	"Aeskeygenassist",
	"And",
	"Andn",
	"Andnpd",
	"Andnps",
	"Andpd",
	"Andps",
	"Arpl",
	"Bextr",
	"Blcfill",
	"Blci",
	"Blcic",
	"Blcmsk",
	"Blcs",
	"Blendpd",
	"Blendps",
	"Blendvpd",
	"Blendvps",
	"Blsfill",
	"Blsi",
	"Blsic",
	"Blsmsk",
	"Blsr",
	"Bndcl",
	"Bndcn",
	"Bndcu",
	"Bndldx",
	"Bndmk",
	"Bndmov",
	"Bndstx",
	"Bound",
	"Bsf",
	"Bsr",
	"Bswap",
	"Bt",
	"Btc",
	"Btr",
	"Bts",
	"Bzhi",
	"Call",
	"Cbw",
	"Cdq",
	"Cdqe",
	"Cl1invmb",
	"Clac",
	"Clc",
	"Cld",
	"Cldemote",
	"Clflush",
	"Clflushopt",
	"Clgi",
	"Cli",
	"Clrssbsy",
	"Clts",
	"Clwb",
	"Clzero",
	"Cmc",
	"Cmova",
	"Cmovae",
	"Cmovb",
	"Cmovbe",
	"Cmove",
	"Cmovg",
	"Cmovge",
	"Cmovl",
	"Cmovle",
	"Cmovne",
	"Cmovno",
	"Cmovnp",
	"Cmovns",
	"Cmovo",
	"Cmovp",
	"Cmovs",
	"Cmp",
	"Cmppd",
	"Cmpps",
	"Cmpsb",
	"Cmpsd",
	"Cmpsq",
	"Cmpss",
	"Cmpsw",
	"Cmpxchg",
	"Cmpxchg16b",
	"Cmpxchg8b",
	"Comisd",
	"Comiss",
	"Cpuid",
	"Cqo",
	"Crc32",
	"Cvtdq2pd",
	"Cvtdq2ps",
	"Cvtpd2dq",
	"Cvtpd2pi",
	"Cvtpd2ps",
	"Cvtpi2pd",
	"Cvtpi2ps",
	"Cvtps2dq",
	"Cvtps2pd",
	"Cvtps2pi",
	"Cvtsd2si",
	"Cvtsd2ss",
	"Cvtsi2sd",
	"Cvtsi2ss",
	"Cvtss2sd",
	"Cvtss2si",
	"Cvttpd2dq",
	"Cvttpd2pi",
	"Cvttps2dq",
	"Cvttps2pi",
	"Cvttsd2si",
	"Cvttss2si",
	"Cwd",
	"Cwde",
	"Daa",
	"Das",
	"Db",
	"Dd",
	"Dec",
	"Div",
	"Divpd",
	"Divps",
	"Divsd",
	"Divss",
	"Dppd",
	"Dpps",
	"Dq",
	"Dw",
	"Emms",
	"Encls",
	"Enclu",
	"Enclv",
	"Endbr32",
	"Endbr64",
	"Enqcmd",
	"Enqcmds",
	"Enter",
	"Extractps",
	"Extrq",
	"F2xm1",
	"Fabs",
	"Fadd",
	"Faddp",
	"Fbld",
	"Fbstp",
	"Fchs",
	"Fclex",
	"Fcmovb",
	"Fcmovbe",
	"Fcmove",
	"Fcmovnb",
	"Fcmovnbe",
	"Fcmovne",
	"Fcmovnu",
	"Fcmovu",
	"Fcom",
	"Fcomi",
	"Fcomip",
	"Fcomp",
	"Fcompp",
	"Fcos",
	"Fdecstp",
	"Fdisi",
	"Fdiv",
	"Fdivp",
	"Fdivr",
	"Fdivrp",
	"Femms",
	"Feni",
	"Ffree",
	"Ffreep",
	"Fiadd",
	"Ficom",
	"Ficomp",
	"Fidiv",
	"Fidivr",
	"Fild",
	"Fimul",
	"Fincstp",
	"Finit",
	"Fist",
	"Fistp",
	"Fisttp",
	"Fisub",
	"Fisubr",
	"Fld",
	"Fld1",
	"Fldcw",
	"Fldenv",
	"Fldl2e",
	"Fldl2t",
	"Fldlg2",
	"Fldln2",
	"Fldpi",
	"Fldz",
	"Fmul",
	"Fmulp",
	"Fnclex",
	"Fndisi",
	"Fneni",
	"Fninit",
	"Fnop",
	"Fnsave",
	"Fnsetpm",
	"Fnstcw",
	"Fnstenv",
	"Fnstsw",
	"Fpatan",
	"Fprem",
	"Fprem1",
	"Fptan",
	"Frndint",
	"Frstor",
	"Frstpm",
	"Fsave",
	"Fscale",
	"Fsetpm",
	"Fsin",
	"Fsincos",
	"Fsqrt",
	"Fst",
	"Fstcw",
	"Fstdw",
	"Fstenv",
	"Fstp",
	"Fstpnce",
	"Fstsg",
	"Fstsw",
	"Fsub",
	"Fsubp",
	"Fsubr",
	"Fsubrp",
	"Ftst",
	"Fucom",
	"Fucomi",
	"Fucomip",
	"Fucomp",
	"Fucompp",
	"Fxam",
	"Fxch",
	"Fxrstor",
	"Fxrstor64",
	"Fxsave",
	"Fxsave64",
	"Fxtract",
	"Fyl2x",
	"Fyl2xp1",
	"Getsec",
	"Gf2p8affineinvqb",
	"Gf2p8affineqb",
	"Gf2p8mulb",
	"Haddpd",
	"Haddps",
	"Hlt",
	"Hsubpd",
	"Hsubps",
	"Ibts",
	"Idiv",
	"Imul",
	"In",
	"Inc",
	"Incsspd",
	"Incsspq",
	"Insb",
	"Insd",
	"Insertps",
	"Insertq",
	"Insw",
	"Int",
	"Int1",
	"Into",
	"Invd",
	"Invept",
	"Invlpg",
	"Invlpga",
	"Invpcid",
	"Invvpid",
	"Iret",
	"Ja",
	"Jae",
	"Jb",
	"Jbe",
	"Jcxz",
	"Je",
	"Jecxz",
	"Jg",
	"Jge",
	"Jl",
	"Jle",
	"Jmp",
	"Jmpe",
	"Jne",
	"Jno",
	"Jnp",
	"Jns",
	"Jo",
	"Jp",
	"Jrcxz",
	"Js",
	"Kaddb",
	"Kaddd",
	"Kaddq",
	"Kaddw",
	"Kandb",
	"Kandd",
	"Kandnb",
	"Kandnd",
	"Kandnq",
	"Kandnw",
	"Kandq",
	"Kandw",
	"Kmovb",
	"Kmovd",
	"Kmovq",
	"Kmovw",
	"Knotb",
	"Knotd",
	"Knotq",
	"Knotw",
	"Korb",
	"Kord",
	"Korq",
	"Kortestb",
	"Kortestd",
	"Kortestq",
	"Kortestw",
	"Korw",
	"Kshiftlb",
	"Kshiftld",
	"Kshiftlq",
	"Kshiftlw",
	"Kshiftrb",
	"Kshiftrd",
	"Kshiftrq",
	"Kshiftrw",
	"Ktestb",
	"Ktestd",
	"Ktestq",
	"Ktestw",
	"Kunpckbw",
	"Kunpckdq",
	"Kunpckwd",
	"Kxnorb",
	"Kxnord",
	"Kxnorq",
	"Kxnorw",
	"Kxorb",
	"Kxord",
	"Kxorq",
	"Kxorw",
	"Lahf",
	"Lar",
	"Lddqu",
	"Ldmxcsr",
	"Lds",
	"Lea",
	"Leave",
	"Les",
	"Lfence",
	"Lfs",
	"Lgdt",
	"Lgs",
	"Lidt",
	"Lldt",
	"Llwpcb",
	"Lmsw",
	"Loadall",
	"Lodsb",
	"Lodsd",
	"Lodsq",
	"Lodsw",
	"Loop",
	"Loope",
	"Loopne",
	"Lsl",
	"Lss",
	"Ltr",
	"Lwpins",
	"Lwpval",
	"Lzcnt",
	"Maskmovdqu",
	"Maskmovq",
	"Maxpd",
	"Maxps",
	"Maxsd",
	"Maxss",
	"Mcommit",
	"Mfence",
	"Minpd",
	"Minps",
	"Minsd",
	"Minss",
	"Monitor",
	"Monitorx",
	"Montmul",
	"Mov",
	"Movapd",
	"Movaps",
	"Movbe",
	"Movd",
	"Movddup",
	"Movdir64b",
	"Movdiri",
	"Movdq2q",
	"Movdqa",
	"Movdqu",
	"Movhlps",
	"Movhpd",
	"Movhps",
	"Movlhps",
	"Movlpd",
	"Movlps",
	"Movmskpd",
	"Movmskps",
	"Movntdq",
	"Movntdqa",
	"Movnti",
	"Movntpd",
	"Movntps",
	"Movntq",
	"Movntsd",
	"Movntss",
	"Movq",
	"Movq2dq",
	"Movsb",
	"Movsd",
	"Movshdup",
	"Movsldup",
	"Movsq",
	"Movss",
	"Movsw",
	"Movsx",
	"Movsxd",
	"Movupd",
	"Movups",
	"Movzx",
	"Mpsadbw",
	"Mul",
	"Mulpd",
	"Mulps",
	"Mulsd",
	"Mulss",
	"Mulx",
	"Mwait",
	"Mwaitx",
	"Neg",
	"Nop",
	"Not",
	"Or",
	"Orpd",
	"Orps",
	"Out",
	"Outsb",
	"Outsd",
	"Outsw",
	"Pabsb",
	"Pabsd",
	"Pabsw",
	"Packssdw",
	"Packsswb",
	"Packusdw",
	"Packuswb",
	"Paddb",
	"Paddd",
	"Paddq",
	"Paddsb",
	"Paddsw",
	"Paddusb",
	"Paddusw",
	"Paddw",
	"Palignr",
	"Pand",
	"Pandn",
	"Pause",
	"Pavgb",
	"Pavgusb",
	"Pavgw",
	"Pblendvb",
	"Pblendw",
	"Pclmulqdq",
	"Pcmpeqb",
	"Pcmpeqd",
	"Pcmpeqq",
	"Pcmpeqw",
	"Pcmpestri",
	"Pcmpestri64",
	"Pcmpestrm",
	"Pcmpestrm64",
	"Pcmpgtb",
	"Pcmpgtd",
	"Pcmpgtq",
	"Pcmpgtw",
	"Pcmpistri",
	"Pcmpistrm",
	"Pcommit",
	"Pconfig",
	"Pdep",
	"Pext",
	"Pextrb",
	"Pextrd",
	"Pextrq",
	"Pextrw",
	"Pf2id",
	"Pf2iw",
	"Pfacc",
	"Pfadd",
	"Pfcmpeq",
	"Pfcmpge",
	"Pfcmpgt",
	"Pfmax",
	"Pfmin",
	"Pfmul",
	"Pfnacc",
	"Pfpnacc",
	"Pfrcp",
	"Pfrcpit1",
	"Pfrcpit2",
	"Pfrcpv",
	"Pfrsqit1",
	"Pfrsqrt",
	"Pfrsqrtv",
	"Pfsub",
	"Pfsubr",
	"Phaddd",
	"Phaddsw",
	"Phaddw",
	"Phminposuw",
	"Phsubd",
	"Phsubsw",
	"Phsubw",
	"Pi2fd",
	"Pi2fw",
	"Pinsrb",
	"Pinsrd",
	"Pinsrq",
	"Pinsrw",
	"Pmaddubsw",
	"Pmaddwd",
	"Pmaxsb",
	"Pmaxsd",
	"Pmaxsw",
	"Pmaxub",
	"Pmaxud",
	"Pmaxuw",
	"Pminsb",
	"Pminsd",
	"Pminsw",
	"Pminub",
	"Pminud",
	"Pminuw",
	"Pmovmskb",
	"Pmovsxbd",
	"Pmovsxbq",
	"Pmovsxbw",
	"Pmovsxdq",
	"Pmovsxwd",
	"Pmovsxwq",
	"Pmovzxbd",
	"Pmovzxbq",
	"Pmovzxbw",
	"Pmovzxdq",
	"Pmovzxwd",
	"Pmovzxwq",
	"Pmuldq",
	"Pmulhrsw",
	"Pmulhrw",
	"Pmulhuw",
	"Pmulhw",
	"Pmulld",
	"Pmullw",
	"Pmuludq",
	"Pop",
	"Popa",
	"Popcnt",
	"Popf",
	"Por",
	"Prefetch",
	"Prefetchnta",
	"Prefetcht0",
	"Prefetcht1",
	"Prefetcht2",
	"Prefetchw",
	"Prefetchwt1",
	"Psadbw",
	"Pshufb",
	"Pshufd",
	"Pshufhw",
	"Pshuflw",
	"Pshufw",
	"Psignb",
	"Psignd",
	"Psignw",
	"Pslld",
	"Pslldq",
	"Psllq",
	"Psllw",
	"Psrad",
	"Psraw",
	"Psrld",
	"Psrldq",
	"Psrlq",
	"Psrlw",
	"Psubb",
	"Psubd",
	"Psubq",
	"Psubsb",
	"Psubsw",
	"Psubusb",
	"Psubusw",
	"Psubw",
	"Pswapd",
	"Ptest",
	"Ptwrite",
	"Punpckhbw",
	"Punpckhdq",
	"Punpckhqdq",
	"Punpckhwd",
	"Punpcklbw",
	"Punpckldq",
	"Punpcklqdq",
	"Punpcklwd",
	"Push",
	"Pusha",
	"Pushf",
	"Pxor",
	"Rcl",
	"Rcpps",
	"Rcpss",
	"Rcr",
	"Rdfsbase",
	"Rdgsbase",
	"Rdmsr",
	"Rdpid",
	"Rdpkru",
	"Rdpmc",
	"Rdpru",
	"Rdrand",
	"Rdseed",
	"Rdsspd",
	"Rdsspq",
	"Rdtsc",
	"Rdtscp",
	"Reservednop",
	"Ret",
	"Retf",
	"Rol",
	"Ror",
	"Rorx",
	"Roundpd",
	"Roundps",
	"Roundsd",
	"Roundss",
	"Rsm",
	"Rsqrtps",
	"Rsqrtss",
	"Rstorssp",
	"Sahf",
	"Sal",
	"Salc",
	"Sar",
	"Sarx",
	"Saveprevssp",
	"Sbb",
	"Scasb",
	"Scasd",
	"Scasq",
	"Scasw",
	"Seta",
	"Setae",
	"Setb",
	"Setbe",
	"Sete",
	"Setg",
	"Setge",
	"Setl",
	"Setle",
	"Setne",
	"Setno",
	"Setnp",
	"Setns",
	"Seto",
	"Setp",
	"Sets",
	"Setssbsy",
	"Sfence",
	"Sgdt",
	"Sha1msg1",
	"Sha1msg2",
	"Sha1nexte",
	"Sha1rnds4",
	"Sha256msg1",
	"Sha256msg2",
	"Sha256rnds2",
	"Shl",
	"Shld",
	"Shlx",
	"Shr",
	"Shrd",
	"Shrx",
	"Shufpd",
	"Shufps",
	"Sidt",
	"Skinit",
	"Sldt",
	"Slwpcb",
	"Smsw",
	"Sqrtpd",
	"Sqrtps",
	"Sqrtsd",
	"Sqrtss",
	"Stac",
	"Stc",
	"Std",
	"Stgi",
	"Sti",
	"Stmxcsr",
	"Stosb",
	"Stosd",
	"Stosq",
	"Stosw",
	"Str",
	"Sub",
	"Subpd",
	"Subps",
	"Subsd",
	"Subss",
	"Swapgs",
	"Syscall",
	"Sysenter",
	"Sysexit",
	"Sysret",
	"T1mskc",
	"Test",
	"Tpause",
	"Tzcnt",
	"Tzmsk",
	"Ucomisd",
	"Ucomiss",
	"Ud0",
	"Ud1",
	"Ud2",
	"Umonitor",
	"Umov",
	"Umwait",
	"Unpckhpd",
	"Unpckhps",
	"Unpcklpd",
	"Unpcklps",
	"V4fmaddps",
	"V4fmaddss",
	"V4fnmaddps",
	"V4fnmaddss",
	"Vaddpd",
	"Vaddps",
	"Vaddsd",
	"Vaddss",
	"Vaddsubpd",
	"Vaddsubps",
	"Vaesdec",
	"Vaesdeclast",
	"Vaesenc",
	"Vaesenclast",
	"Vaesimc",
	"Vaeskeygenassist",
	"Valignd",
	"Valignq",
	"Vandnpd",
	"Vandnps",
	"Vandpd",
	"Vandps",
	"Vblendmpd",
	"Vblendmps",
	"Vblendpd",
	"Vblendps",
	"Vblendvpd",
	"Vblendvps",
	"Vbroadcastf128",
	"Vbroadcastf32x2",
	"Vbroadcastf32x4",
	"Vbroadcastf32x8",
	"Vbroadcastf64x2",
	"Vbroadcastf64x4",
	"Vbroadcasti128",
	"Vbroadcasti32x2",
	"Vbroadcasti32x4",
	"Vbroadcasti32x8",
	"Vbroadcasti64x2",
	"Vbroadcasti64x4",
	"Vbroadcastsd",
	"Vbroadcastss",
	"Vcmppd",
	"Vcmpps",
	"Vcmpsd",
	"Vcmpss",
	"Vcomisd",
	"Vcomiss",
	"Vcompresspd",
	"Vcompressps",
	"Vcvtdq2pd",
	"Vcvtdq2ps",
	"Vcvtne2ps2bf16",
	"Vcvtneps2bf16",
	"Vcvtpd2dq",
	"Vcvtpd2ps",
	"Vcvtpd2qq",
	"Vcvtpd2udq",
	"Vcvtpd2uqq",
	"Vcvtph2ps",
	"Vcvtps2dq",
	"Vcvtps2pd",
	"Vcvtps2ph",
	"Vcvtps2qq",
	"Vcvtps2udq",
	"Vcvtps2uqq",
	"Vcvtqq2pd",
	"Vcvtqq2ps",
	"Vcvtsd2si",
	"Vcvtsd2ss",
	"Vcvtsd2usi",
	"Vcvtsi2sd",
	"Vcvtsi2ss",
	"Vcvtss2sd",
	"Vcvtss2si",
	"Vcvtss2usi",
	"Vcvttpd2dq",
	"Vcvttpd2qq",
	"Vcvttpd2udq",
	"Vcvttpd2uqq",
	"Vcvttps2dq",
	"Vcvttps2qq",
	"Vcvttps2udq",
	"Vcvttps2uqq",
	"Vcvttsd2si",
	"Vcvttsd2usi",
	"Vcvttss2si",
	"Vcvttss2usi",
	"Vcvtudq2pd",
	"Vcvtudq2ps",
	"Vcvtuqq2pd",
	"Vcvtuqq2ps",
	"Vcvtusi2sd",
	"Vcvtusi2ss",
	"Vdbpsadbw",
	"Vdivpd",
	"Vdivps",
	"Vdivsd",
	"Vdivss",
	"Vdpbf16ps",
	"Vdppd",
	"Vdpps",
	"Verr",
	"Verw",
	"Vexp2pd",
	"Vexp2ps",
	"Vexpandpd",
	"Vexpandps",
	"Vextractf128",
	"Vextractf32x4",
	"Vextractf32x8",
	"Vextractf64x2",
	"Vextractf64x4",
	"Vextracti128",
	"Vextracti32x4",
	"Vextracti32x8",
	"Vextracti64x2",
	"Vextracti64x4",
	"Vextractps",
	"Vfixupimmpd",
	"Vfixupimmps",
	"Vfixupimmsd",
	"Vfixupimmss",
	"Vfmadd132pd",
	"Vfmadd132ps",
	"Vfmadd132sd",
	"Vfmadd132ss",
	"Vfmadd213pd",
	"Vfmadd213ps",
	"Vfmadd213sd",
	"Vfmadd213ss",
	"Vfmadd231pd",
	"Vfmadd231ps",
	"Vfmadd231sd",
	"Vfmadd231ss",
	"Vfmaddpd",
	"Vfmaddps",
	"Vfmaddsd",
	"Vfmaddss",
	"Vfmaddsub132pd",
	"Vfmaddsub132ps",
	"Vfmaddsub213pd",
	"Vfmaddsub213ps",
	"Vfmaddsub231pd",
	"Vfmaddsub231ps",
	"Vfmaddsubpd",
	"Vfmaddsubps",
	"Vfmsub132pd",
	"Vfmsub132ps",
	"Vfmsub132sd",
	"Vfmsub132ss",
	"Vfmsub213pd",
	"Vfmsub213ps",
	"Vfmsub213sd",
	"Vfmsub213ss",
	"Vfmsub231pd",
	"Vfmsub231ps",
	"Vfmsub231sd",
	"Vfmsub231ss",
	"Vfmsubadd132pd",
	"Vfmsubadd132ps",
	"Vfmsubadd213pd",
	"Vfmsubadd213ps",
	"Vfmsubadd231pd",
	"Vfmsubadd231ps",
	"Vfmsubaddpd",
	"Vfmsubaddps",
	"Vfmsubpd",
	"Vfmsubps",
	"Vfmsubsd",
	"Vfmsubss",
	"Vfnmadd132pd",
	"Vfnmadd132ps",
	"Vfnmadd132sd",
	"Vfnmadd132ss",
	"Vfnmadd213pd",
	"Vfnmadd213ps",
	"Vfnmadd213sd",
	"Vfnmadd213ss",
	"Vfnmadd231pd",
	"Vfnmadd231ps",
	"Vfnmadd231sd",
	"Vfnmadd231ss",
	"Vfnmaddpd",
	"Vfnmaddps",
	"Vfnmaddsd",
	"Vfnmaddss",
	"Vfnmsub132pd",
	"Vfnmsub132ps",
	"Vfnmsub132sd",
	"Vfnmsub132ss",
	"Vfnmsub213pd",
	"Vfnmsub213ps",
	"Vfnmsub213sd",
	"Vfnmsub213ss",
	"Vfnmsub231pd",
	"Vfnmsub231ps",
	"Vfnmsub231sd",
	"Vfnmsub231ss",
	"Vfnmsubpd",
	"Vfnmsubps",
	"Vfnmsubsd",
	"Vfnmsubss",
	"Vfpclasspd",
	"Vfpclassps",
	"Vfpclasssd",
	"Vfpclassss",
	"Vfrczpd",
	"Vfrczps",
	"Vfrczsd",
	"Vfrczss",
	"Vgatherdpd",
	"Vgatherdps",
	"Vgatherpf0dpd",
	"Vgatherpf0dps",
	"Vgatherpf0qpd",
	"Vgatherpf0qps",
	"Vgatherpf1dpd",
	"Vgatherpf1dps",
	"Vgatherpf1qpd",
	"Vgatherpf1qps",
	"Vgatherqpd",
	"Vgatherqps",
	"Vgetexppd",
	"Vgetexpps",
	"Vgetexpsd",
	"Vgetexpss",
	"Vgetmantpd",
	"Vgetmantps",
	"Vgetmantsd",
	"Vgetmantss",
	"Vgf2p8affineinvqb",
	"Vgf2p8affineqb",
	"Vgf2p8mulb",
	"Vhaddpd",
	"Vhaddps",
	"Vhsubpd",
	"Vhsubps",
	"Vinsertf128",
	"Vinsertf32x4",
	"Vinsertf32x8",
	"Vinsertf64x2",
	"Vinsertf64x4",
	"Vinserti128",
	"Vinserti32x4",
	"Vinserti32x8",
	"Vinserti64x2",
	"Vinserti64x4",
	"Vinsertps",
	"Vlddqu",
	"Vldmxcsr",
	"Vmaskmovdqu",
	"Vmaskmovpd",
	"Vmaskmovps",
	"Vmaxpd",
	"Vmaxps",
	"Vmaxsd",
	"Vmaxss",
	"Vmcall",
	"Vmclear",
	"Vmfunc",
	"Vminpd",
	"Vminps",
	"Vminsd",
	"Vminss",
	"Vmlaunch",
	"Vmload",
	"Vmmcall",
	"Vmovapd",
	"Vmovaps",
	"Vmovd",
	"Vmovddup",
	"Vmovdqa",
	"Vmovdqa32",
	"Vmovdqa64",
	"Vmovdqu",
	"Vmovdqu16",
	"Vmovdqu32",
	"Vmovdqu64",
	"Vmovdqu8",
	"Vmovhlps",
	"Vmovhpd",
	"Vmovhps",
	"Vmovlhps",
	"Vmovlpd",
	"Vmovlps",
	"Vmovmskpd",
	"Vmovmskps",
	"Vmovntdq",
	"Vmovntdqa",
	"Vmovntpd",
	"Vmovntps",
	"Vmovq",
	"Vmovsd",
	"Vmovshdup",
	"Vmovsldup",
	"Vmovss",
	"Vmovupd",
	"Vmovups",
	"Vmpsadbw",
	"Vmptrld",
	"Vmptrst",
	"Vmread",
	"Vmresume",
	"Vmrun",
	"Vmsave",
	"Vmulpd",
	"Vmulps",
	"Vmulsd",
	"Vmulss",
	"Vmwrite",
	"Vmxoff",
	"Vmxon",
	"Vorpd",
	"Vorps",
	"Vp2intersectd",
	"Vp2intersectq",
	"Vp4dpwssd",
	"Vp4dpwssds",
	"Vpabsb",
	"Vpabsd",
	"Vpabsq",
	"Vpabsw",
	"Vpackssdw",
	"Vpacksswb",
	"Vpackusdw",
	"Vpackuswb",
	"Vpaddb",
	"Vpaddd",
	"Vpaddq",
	"Vpaddsb",
	"Vpaddsw",
	"Vpaddusb",
	"Vpaddusw",
	"Vpaddw",
	"Vpalignr",
	"Vpand",
	"Vpandd",
	"Vpandn",
	"Vpandnd",
	"Vpandnq",
	"Vpandq",
	"Vpavgb",
	"Vpavgw",
	"Vpblendd",
	"Vpblendmb",
	"Vpblendmd",
	"Vpblendmq",
	"Vpblendmw",
	"Vpblendvb",
	"Vpblendw",
	"Vpbroadcastb",
	"Vpbroadcastd",
	"Vpbroadcastmb2q",
	"Vpbroadcastmw2d",
	"Vpbroadcastq",
	"Vpbroadcastw",
	"Vpclmulqdq",
	"Vpcmov",
	"Vpcmpb",
	"Vpcmpd",
	"Vpcmpeqb",
	"Vpcmpeqd",
	"Vpcmpeqq",
	"Vpcmpeqw",
	"Vpcmpestri",
	"Vpcmpestri64",
	"Vpcmpestrm",
	"Vpcmpestrm64",
	"Vpcmpgtb",
	"Vpcmpgtd",
	"Vpcmpgtq",
	"Vpcmpgtw",
	"Vpcmpistri",
	"Vpcmpistrm",
	"Vpcmpq",
	"Vpcmpub",
	"Vpcmpud",
	"Vpcmpuq",
	"Vpcmpuw",
	"Vpcmpw",
	"Vpcomb",
	"Vpcomd",
	"Vpcompressb",
	"Vpcompressd",
	"Vpcompressq",
	"Vpcompressw",
	"Vpcomq",
	"Vpcomub",
	"Vpcomud",
	"Vpcomuq",
	"Vpcomuw",
	"Vpcomw",
	"Vpconflictd",
	"Vpconflictq",
	"Vpdpbusd",
	"Vpdpbusds",
	"Vpdpwssd",
	"Vpdpwssds",
	"Vperm2f128",
	"Vperm2i128",
	"Vpermb",
	"Vpermd",
	"Vpermi2b",
	"Vpermi2d",
	"Vpermi2pd",
	"Vpermi2ps",
	"Vpermi2q",
	"Vpermi2w",
	"Vpermil2pd",
	"Vpermil2ps",
	"Vpermilpd",
	"Vpermilps",
	"Vpermpd",
	"Vpermps",
	"Vpermq",
	"Vpermt2b",
	"Vpermt2d",
	"Vpermt2pd",
	"Vpermt2ps",
	"Vpermt2q",
	"Vpermt2w",
	"Vpermw",
	"Vpexpandb",
	"Vpexpandd",
	"Vpexpandq",
	"Vpexpandw",
	"Vpextrb",
	"Vpextrd",
	"Vpextrq",
	"Vpextrw",
	"Vpgatherdd",
	"Vpgatherdq",
	"Vpgatherqd",
	"Vpgatherqq",
	"Vphaddbd",
	"Vphaddbq",
	"Vphaddbw",
	"Vphaddd",
	"Vphadddq",
	"Vphaddsw",
	"Vphaddubd",
	"Vphaddubq",
	"Vphaddubw",
	"Vphaddudq",
	"Vphadduwd",
	"Vphadduwq",
	"Vphaddw",
	"Vphaddwd",
	"Vphaddwq",
	"Vphminposuw",
	"Vphsubbw",
	"Vphsubd",
	"Vphsubdq",
	"Vphsubsw",
	"Vphsubw",
	"Vphsubwd",
	"Vpinsrb",
	"Vpinsrd",
	"Vpinsrq",
	"Vpinsrw",
	"Vplzcntd",
	"Vplzcntq",
	"Vpmacsdd",
	"Vpmacsdqh",
	"Vpmacsdql",
	"Vpmacssdd",
	"Vpmacssdqh",
	"Vpmacssdql",
	"Vpmacsswd",
	"Vpmacssww",
	"Vpmacswd",
	"Vpmacsww",
	"Vpmadcsswd",
	"Vpmadcswd",
	"Vpmadd52huq",
	"Vpmadd52luq",
	"Vpmaddubsw",
	"Vpmaddwd",
	"Vpmaskmovd",
	"Vpmaskmovq",
	"Vpmaxsb",
	"Vpmaxsd",
	"Vpmaxsq",
	"Vpmaxsw",
	"Vpmaxub",
	"Vpmaxud",
	"Vpmaxuq",
	"Vpmaxuw",
	"Vpminsb",
	"Vpminsd",
	"Vpminsq",
	"Vpminsw",
	"Vpminub",
	"Vpminud",
	"Vpminuq",
	"Vpminuw",
	"Vpmovb2m",
	"Vpmovd2m",
	"Vpmovdb",
	"Vpmovdw",
	"Vpmovm2b",
	"Vpmovm2d",
	"Vpmovm2q",
	"Vpmovm2w",
	"Vpmovmskb",
	"Vpmovq2m",
	"Vpmovqb",
	"Vpmovqd",
	"Vpmovqw",
	"Vpmovsdb",
	"Vpmovsdw",
	"Vpmovsqb",
	"Vpmovsqd",
	"Vpmovsqw",
	"Vpmovswb",
	"Vpmovsxbd",
	"Vpmovsxbq",
	"Vpmovsxbw",
	"Vpmovsxdq",
	"Vpmovsxwd",
	"Vpmovsxwq",
	"Vpmovusdb",
	"Vpmovusdw",
	"Vpmovusqb",
	"Vpmovusqd",
	"Vpmovusqw",
	"Vpmovuswb",
	"Vpmovw2m",
	"Vpmovwb",
	"Vpmovzxbd",
	"Vpmovzxbq",
	"Vpmovzxbw",
	"Vpmovzxdq",
	"Vpmovzxwd",
	"Vpmovzxwq",
	"Vpmuldq",
	"Vpmulhrsw",
	"Vpmulhuw",
	"Vpmulhw",
	"Vpmulld",
	"Vpmullq",
	"Vpmullw",
	"Vpmultishiftqb",
	"Vpmuludq",
	"Vpopcntb",
	"Vpopcntd",
	"Vpopcntq",
	"Vpopcntw",
	"Vpor",
	"Vpord",
	"Vporq",
	"Vpperm",
	"Vprold",
	"Vprolq",
	"Vprolvd",
	"Vprolvq",
	"Vprord",
	"Vprorq",
	"Vprorvd",
	"Vprorvq",
	"Vprotb",
	"Vprotd",
	"Vprotq",
	"Vprotw",
	"Vpsadbw",
	"Vpscatterdd",
	"Vpscatterdq",
	"Vpscatterqd",
	"Vpscatterqq",
	"Vpshab",
	"Vpshad",
	"Vpshaq",
	"Vpshaw",
	"Vpshlb",
	"Vpshld",
	"Vpshldd",
	"Vpshldq",
	"Vpshldvd",
	"Vpshldvq",
	"Vpshldvw",
	"Vpshldw",
	"Vpshlq",
	"Vpshlw",
	"Vpshrdd",
	"Vpshrdq",
	"Vpshrdvd",
	"Vpshrdvq",
	"Vpshrdvw",
	"Vpshrdw",
	"Vpshufb",
	"Vpshufbitqmb",
	"Vpshufd",
	"Vpshufhw",
	"Vpshuflw",
	"Vpsignb",
	"Vpsignd",
	"Vpsignw",
	"Vpslld",
	"Vpslldq",
	"Vpsllq",
	"Vpsllvd",
	"Vpsllvq",
	"Vpsllvw",
	"Vpsllw",
	"Vpsrad",
	"Vpsraq",
	"Vpsravd",
	"Vpsravq",
	"Vpsravw",
	"Vpsraw",
	"Vpsrld",
	"Vpsrldq",
	"Vpsrlq",
	"Vpsrlvd",
	"Vpsrlvq",
	"Vpsrlvw",
	"Vpsrlw",
	"Vpsubb",
	"Vpsubd",
	"Vpsubq",
	"Vpsubsb",
	"Vpsubsw",
	"Vpsubusb",
	"Vpsubusw",
	"Vpsubw",
	"Vpternlogd",
	"Vpternlogq",
	"Vptest",
	"Vptestmb",
	"Vptestmd",
	"Vptestmq",
	"Vptestmw",
	"Vptestnmb",
	"Vptestnmd",
	"Vptestnmq",
	"Vptestnmw",
	"Vpunpckhbw",
	"Vpunpckhdq",
	"Vpunpckhqdq",
	"Vpunpckhwd",
	"Vpunpcklbw",
	"Vpunpckldq",
	"Vpunpcklqdq",
	"Vpunpcklwd",
	"Vpxor",
	"Vpxord",
	"Vpxorq",
	"Vrangepd",
	"Vrangeps",
	"Vrangesd",
	"Vrangess",
	"Vrcp14pd",
	"Vrcp14ps",
	"Vrcp14sd",
	"Vrcp14ss",
	"Vrcp28pd",
	"Vrcp28ps",
	"Vrcp28sd",
	"Vrcp28ss",
	"Vrcpps",
	"Vrcpss",
	"Vreducepd",
	"Vreduceps",
	"Vreducesd",
	"Vreducess",
	"Vrndscalepd",
	"Vrndscaleps",
	"Vrndscalesd",
	"Vrndscaless",
	"Vroundpd",
	"Vroundps",
	"Vroundsd",
	"Vroundss",
	"Vrsqrt14pd",
	"Vrsqrt14ps",
	"Vrsqrt14sd",
	"Vrsqrt14ss",
	"Vrsqrt28pd",
	"Vrsqrt28ps",
	"Vrsqrt28sd",
	"Vrsqrt28ss",
	"Vrsqrtps",
	"Vrsqrtss",
	"Vscalefpd",
	"Vscalefps",
	"Vscalefsd",
	"Vscalefss",
	"Vscatterdpd",
	"Vscatterdps",
	"Vscatterpf0dpd",
	"Vscatterpf0dps",
	"Vscatterpf0qpd",
	"Vscatterpf0qps",
	"Vscatterpf1dpd",
	"Vscatterpf1dps",
	"Vscatterpf1qpd",
	"Vscatterpf1qps",
	"Vscatterqpd",
	"Vscatterqps",
	"Vshuff32x4",
	"Vshuff64x2",
	"Vshufi32x4",
	"Vshufi64x2",
	"Vshufpd",
	"Vshufps",
	"Vsqrtpd",
	"Vsqrtps",
	"Vsqrtsd",
	"Vsqrtss",
	"Vstmxcsr",
	"Vsubpd",
	"Vsubps",
	"Vsubsd",
	"Vsubss",
	"Vtestpd",
	"Vtestps",
	"Vucomisd",
	"Vucomiss",
	"Vunpckhpd",
	"Vunpckhps",
	"Vunpcklpd",
	"Vunpcklps",
	"Vxorpd",
	"Vxorps",
	"Vzeroall",
	"Vzeroupper",
	"Wait",
	"Wbinvd",
	"Wbnoinvd",
	"Wrfsbase",
	"Wrgsbase",
	"Wrmsr",
	"Wrpkru",
	"Wrssd",
	"Wrssq",
	"Wrussd",
	"Wrussq",
	"Xabort",
	"Xadd",
	"Xbegin",
	"Xbts",
	"Xchg",
	"Xcryptcbc",
	"Xcryptcfb",
	"Xcryptctr",
	"Xcryptecb",
	"Xcryptofb",
	"Xend",
	"Xgetbv",
	"Xlatb",
	"Xor",
	"Xorpd",
	"Xorps",
	"Xrstor",
	"Xrstor64",
	"Xrstors",
	"Xrstors64",
	"Xsave",
	"Xsave64",
	"Xsavec",
	"Xsavec64",
	"Xsaveopt",
	"Xsaveopt64",
	"Xsaves",
	"Xsaves64",
	"Xsetbv",
	"Xsha1",
	"Xsha256",
	"Xstore",
	"Xtest",
	"Rmpadjust",
	"Rmpupdate",
	"Psmash",
	"Pvalidate",
	"Serialize",
	"Xsusldtrk",
	"Xresldtrk",
	"Invlpgb",
	"Tlbsync",
	"Vmgexit",
	"Getsecq",
	"Sysexitq",
	"Ldtilecfg",
	"Tilerelease",
	"Sttilecfg",
	"Tilezero",
	"Tileloaddt1",
	"Tilestored",
	"Tileloadd",
	"Tdpbf16ps",
	"Tdpbuud",
	"Tdpbusd",
	"Tdpbsud",
	"Tdpbssd",
	"Sysretq",
	"Fnstdw",
	"Fnstsg",
	"Rdshr",
	"Wrshr",
	"Smint",
	"Dmint",
	"Rdm",
	"Svdc",
	"Rsdc",
	"Svldt",
	"Rsldt",
	"Svts",
	"Rsts",
	"Bb0_reset",
	"Bb1_reset",
	"Cpu_write",
	"Cpu_read",
	"Altinst",
	"Paveb",
	"Paddsiw",
	"Pmagw",
	"Pdistib",
	"Psubsiw",
	"Pmvzb",
	"Pmvnzb",
	"Pmvlzb",
	"Pmvgezb",
	"Pmulhriw",
	"Pmachriw",
	"Ftstp",
	"Frint2",
	"Frichop",
	"Frinear",
	"Undoc",
	"Tdcall",
	"Seamret",
	"Seamops",
	"Seamcall",
	"Aesencwide128kl",
	"Aesdecwide128kl",
	"Aesencwide256kl",
	"Aesdecwide256kl",
	"Loadiwkey",
	"Aesenc128kl",
	"Aesdec128kl",
	"Aesenc256kl",
	"Aesdec256kl",
	"Encodekey128",
	"Encodekey256",
	"Pushad",
	"Popad",
	"Pushfd",
	"Pushfq",
	"Popfd",
	"Popfq",
	"Iretd",
	"Iretq",
	"Int3",
	"Uiret",
	"Testui",
	"Clui",
	"Stui",
	"Senduipi",
	"Hreset",
	"Ccs_hash",
	"Ccs_encrypt",
	"Lkgs",
	"Eretu",
	"Erets",
	"Storeall",
	"Vaddph",
	"Vaddsh",
	"Vcmpph",
	"Vcmpsh",
	"Vcomish",
	"Vcvtdq2ph",
	"Vcvtpd2ph",
	"Vcvtph2dq",
	"Vcvtph2pd",
	"Vcvtph2psx",
	"Vcvtph2qq",
	"Vcvtph2udq",
	"Vcvtph2uqq",
	"Vcvtph2uw",
	"Vcvtph2w",
	"Vcvtps2phx",
	"Vcvtqq2ph",
	"Vcvtsd2sh",
	"Vcvtsh2sd",
	"Vcvtsh2si",
	"Vcvtsh2ss",
	"Vcvtsh2usi",
	"Vcvtsi2sh",
	"Vcvtss2sh",
	"Vcvttph2dq",
	"Vcvttph2qq",
	"Vcvttph2udq",
	"Vcvttph2uqq",
	"Vcvttph2uw",
	"Vcvttph2w",
	"Vcvttsh2si",
	"Vcvttsh2usi",
	"Vcvtudq2ph",
	"Vcvtuqq2ph",
	"Vcvtusi2sh",
	"Vcvtuw2ph",
	"Vcvtw2ph",
	"Vdivph",
	"Vdivsh",
	"Vfcmaddcph",
	"Vfmaddcph",
	"Vfcmaddcsh",
	"Vfmaddcsh",
	"Vfcmulcph",
	"Vfmulcph",
	"Vfcmulcsh",
	"Vfmulcsh",
	"Vfmaddsub132ph",
	"Vfmaddsub213ph",
	"Vfmaddsub231ph",
	"Vfmsubadd132ph",
	"Vfmsubadd213ph",
	"Vfmsubadd231ph",
	"Vfmadd132ph",
	"Vfmadd213ph",
	"Vfmadd231ph",
	"Vfnmadd132ph",
	"Vfnmadd213ph",
	"Vfnmadd231ph",
	"Vfmadd132sh",
	"Vfmadd213sh",
	"Vfmadd231sh",
	"Vfnmadd132sh",
	"Vfnmadd213sh",
	"Vfnmadd231sh",
	"Vfmsub132ph",
	"Vfmsub213ph",
	"Vfmsub231ph",
	"Vfnmsub132ph",
	"Vfnmsub213ph",
	"Vfnmsub231ph",
	"Vfmsub132sh",
	"Vfmsub213sh",
	"Vfmsub231sh",
	"Vfnmsub132sh",
	"Vfnmsub213sh",
	"Vfnmsub231sh",
	"Vfpclassph",
	"Vfpclasssh",
	"Vgetexpph",
	"Vgetexpsh",
	"Vgetmantph",
	"Vgetmantsh",
	"Vmaxph",
	"Vmaxsh",
	"Vminph",
	"Vminsh",
	"Vmovsh",
	"Vmovw",
	"Vmulph",
	"Vmulsh",
	"Vrcpph",
	"Vrcpsh",
	"Vreduceph",
	"Vreducesh",
	"Vrndscaleph",
	"Vrndscalesh",
	"Vrsqrtph",
	"Vrsqrtsh",
	"Vscalefph",
	"Vscalefsh",
	"Vsqrtph",
	"Vsqrtsh",
	"Vsubph",
	"Vsubsh",
	"Vucomish",
	"Rdudbg",
	"Wrudbg",
	"Clevict0",
	"Clevict1",
	"Delay",
	"Jknzd",
	"Jkzd",
	"Kand",
	"Kandn",
	"Kandnr",
	"Kconcath",
	"Kconcatl",
	"Kextract",
	"Kmerge2l1h",
	"Kmerge2l1l",
	"Kmov",
	"Knot",
	"Kor",
	"Kortest",
	"Kxnor",
	"Kxor",
	"Spflt",
	"Tzcnti",
	"Vaddnpd",
	"Vaddnps",
	"Vaddsetsps",
	"Vcvtfxpntdq2ps",
	"Vcvtfxpntpd2dq",
	"Vcvtfxpntpd2udq",
	"Vcvtfxpntps2dq",
	"Vcvtfxpntps2udq",
	"Vcvtfxpntudq2ps",
	"Vexp223ps",
	"Vfixupnanpd",
	"Vfixupnanps",
	"Vfmadd233ps",
	"Vgatherpf0hintdpd",
	"Vgatherpf0hintdps",
	"Vgmaxabsps",
	"Vgmaxpd",
	"Vgmaxps",
	"Vgminpd",
	"Vgminps",
	"Vloadunpackhd",
	"Vloadunpackhpd",
	"Vloadunpackhps",
	"Vloadunpackhq",
	"Vloadunpackld",
	"Vloadunpacklpd",
	"Vloadunpacklps",
	"Vloadunpacklq",
	"Vlog2ps",
	"Vmovnrapd",
	"Vmovnraps",
	"Vmovnrngoapd",
	"Vmovnrngoaps",
	"Vpackstorehd",
	"Vpackstorehpd",
	"Vpackstorehps",
	"Vpackstorehq",
	"Vpackstoreld",
	"Vpackstorelpd",
	"Vpackstorelps",
	"Vpackstorelq",
	"Vpadcd",
	"Vpaddsetcd",
	"Vpaddsetsd",
	"Vpcmpltd",
	"Vpermf32x4",
	"Vpmadd231d",
	"Vpmadd233d",
	"Vpmulhd",
	"Vpmulhud",
	"Vprefetch0",
	"Vprefetch1",
	"Vprefetch2",
	"Vprefetche0",
	"Vprefetche1",
	"Vprefetche2",
	"Vprefetchenta",
	"Vprefetchnta",
	"Vpsbbd",
	"Vpsbbrd",
	"Vpsubrd",
	"Vpsubrsetbd",
	"Vpsubsetbd",
	"Vrcp23ps",
	"Vrndfxpntpd",
	"Vrndfxpntps",
	"Vrsqrt23ps",
	"Vscaleps",
	"Vscatterpf0hintdpd",
	"Vscatterpf0hintdps",
	"Vsubrpd",
	"Vsubrps",
	"Xsha512",
	"Xstore_alt",
	"Xsha512_alt",
	"Zero_bytes",
	"Aadd",
	"Aand",
	"Aor",
	"Axor",
	"Cmpbexadd",
	"Cmpbxadd",
	"Cmplexadd",
	"Cmplxadd",
	"Cmpnbexadd",
	"Cmpnbxadd",
	"Cmpnlexadd",
	"Cmpnlxadd",
	"Cmpnoxadd",
	"Cmpnpxadd",
	"Cmpnsxadd",
	"Cmpnzxadd",
	"Cmpoxadd",
	"Cmppxadd",
	"Cmpsxadd",
	"Cmpzxadd",
	"Prefetchit0",
	"Prefetchit1",
	"Rdmsrlist",
	"Rmpquery",
	"Tdpfp16ps",
	"Vbcstnebf162ps",
	"Vbcstnesh2ps",
	"Vcvtneebf162ps",
	"Vcvtneeph2ps",
	"Vcvtneobf162ps",
	"Vcvtneoph2ps",
	"Vpdpbssd",
	"Vpdpbssds",
	"Vpdpbsud",
	"Vpdpbsuds",
	"Vpdpbuud",
	"Vpdpbuuds",
	"Wrmsrlist",
	"Wrmsrns",
	"Tcmmrlfp16ps",
	"Tcmmimfp16ps",
	"Pbndkb",
	"Vpdpwsud",
	"Vpdpwsuds",
	"Vpdpwusd",
	"Vpdpwusds",
	"Vpdpwuud",
	"Vpdpwuuds",
	"Vsha512msg1",
	"Vsha512msg2",
	"Vsha512rnds2",
	"Vsm3msg1",
	"Vsm3msg2",
	"Vsm3rnds2",
	"Vsm4key4",
	"Vsm4rnds4",
];
impl fmt::Debug for Mnemonic {
	#[inline]
	fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
		write!(f, "{}", GEN_DEBUG_MNEMONIC[*self as usize])
	}
}
impl Default for Mnemonic {
	#[must_use]
	#[inline]
	fn default() -> Self {
		Mnemonic::INVALID
	}
}
#[allow(non_camel_case_types)]
#[allow(dead_code)]
pub(crate) type MnemonicUnderlyingType = u16;
#[rustfmt::skip]
impl Mnemonic {
	/// Iterates over all `Mnemonic` enum values
	#[inline]
	pub fn values() -> impl Iterator<Item = Mnemonic> + DoubleEndedIterator + ExactSizeIterator + FusedIterator {
		// SAFETY: all values 0-max are valid enum values
		(0..IcedConstants::MNEMONIC_ENUM_COUNT).map(|x| unsafe { mem::transmute::<u16, Mnemonic>(x as u16) })
	}
}
#[test]
#[rustfmt::skip]
fn test_mnemonic_values() {
	let mut iter = Mnemonic::values();
	assert_eq!(iter.size_hint(), (IcedConstants::MNEMONIC_ENUM_COUNT, Some(IcedConstants::MNEMONIC_ENUM_COUNT)));
	assert_eq!(iter.len(), IcedConstants::MNEMONIC_ENUM_COUNT);
	assert!(iter.next().is_some());
	assert_eq!(iter.size_hint(), (IcedConstants::MNEMONIC_ENUM_COUNT - 1, Some(IcedConstants::MNEMONIC_ENUM_COUNT - 1)));
	assert_eq!(iter.len(), IcedConstants::MNEMONIC_ENUM_COUNT - 1);

	let values: Vec<Mnemonic> = Mnemonic::values().collect();
	assert_eq!(values.len(), IcedConstants::MNEMONIC_ENUM_COUNT);
	for (i, value) in values.into_iter().enumerate() {
		assert_eq!(i, value as usize);
	}

	let values1: Vec<Mnemonic> = Mnemonic::values().collect();
	let mut values2: Vec<Mnemonic> = Mnemonic::values().rev().collect();
	values2.reverse();
	assert_eq!(values1, values2);
}
#[rustfmt::skip]
impl TryFrom<usize> for Mnemonic {
	type Error = IcedError;
	#[inline]
	fn try_from(value: usize) -> Result<Self, Self::Error> {
		if value < IcedConstants::MNEMONIC_ENUM_COUNT {
			// SAFETY: all values 0-max are valid enum values
			Ok(unsafe { mem::transmute(value as u16) })
		} else {
			Err(IcedError::new("Invalid Mnemonic value"))
		}
	}
}
#[test]
#[rustfmt::skip]
fn test_mnemonic_try_from_usize() {
	for value in Mnemonic::values() {
		let converted = <Mnemonic as TryFrom<usize>>::try_from(value as usize).unwrap();
		assert_eq!(converted, value);
	}
	assert!(<Mnemonic as TryFrom<usize>>::try_from(IcedConstants::MNEMONIC_ENUM_COUNT).is_err());
	assert!(<Mnemonic as TryFrom<usize>>::try_from(core::usize::MAX).is_err());
}
#[cfg(feature = "serde")]
#[rustfmt::skip]
#[allow(clippy::zero_sized_map_values)]
const _: () = {
	use core::marker::PhantomData;
	use serde::de;
	use serde::{Deserialize, Deserializer, Serialize, Serializer};
	type EnumType = Mnemonic;
	impl Serialize for EnumType {
		#[inline]
		fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
		where
			S: Serializer,
		{
			serializer.serialize_u16(*self as u16)
		}
	}
	impl<'de> Deserialize<'de> for EnumType {
		#[inline]
		fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
		where
			D: Deserializer<'de>,
		{
			struct Visitor<'de> {
				marker: PhantomData<EnumType>,
				lifetime: PhantomData<&'de ()>,
			}
			impl<'de> de::Visitor<'de> for Visitor<'de> {
				type Value = EnumType;
				#[inline]
				fn expecting(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
					formatter.write_str("enum Mnemonic")
				}
				#[inline]
				fn visit_u64<E>(self, v: u64) -> Result<Self::Value, E>
				where
					E: de::Error,
				{
					if let Ok(v) = <usize as TryFrom<_>>::try_from(v) {
						if let Ok(value) = <EnumType as TryFrom<_>>::try_from(v) {
							return Ok(value);
						}
					}
					Err(de::Error::invalid_value(de::Unexpected::Unsigned(v), &"a valid Mnemonic variant value"))
				}
			}
			deserializer.deserialize_u16(Visitor { marker: PhantomData::<EnumType>, lifetime: PhantomData })
		}
	}
};
// GENERATOR-END: Mnemonic
