diff --git a/kernel/trunk/asmxygen.py b/kernel/trunk/asmxygen.py index 3220aa2828..b72dc5b490 100644 --- a/kernel/trunk/asmxygen.py +++ b/kernel/trunk/asmxygen.py @@ -21,1123 +21,151 @@ link_root = "http://websvn.kolibrios.org/filedetails.php?repname=Kolibri+OS&path # fasm keywords keywords = [ - # Generic keywords - "align", - "equ", - "org", - "while", - "load", - "store", - "times", - "repeat", - "virtual", - "display", - "err", - "assert", - "if", - # Instructions - "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", - "blendpd", - "blendps", - "blendvpd", - "blendvps", - "blsi", - "blsmsk", - "blsr", - "bndcl", - "bndcn", - "bndcu", - "bndldx", - "bndmk", - "bndmov", - "bndstx", - "bound", - "bsf", - "bsr", - "bswap", - "bt", - "btc", - "btr", - "bts", - "bzhi", - "call", - "cbw", - "cdq", - "cdqe", - "clac", - "clc", - "cld", - "cldemote", - "clflush", - "clflushopt", - "cli", - "clts", - "clwb", - "cmc", - "cmova", - "cmovae", - "cmovb", - "cmovbe", - "cmovc", - "cmove", - "cmovg", - "cmovge", - "cmovl", - "cmovle", - "cmovna", - "cmovnae", - "cmovnb", - "cmovnbe", - "cmovnc", - "cmovne", - "cmovng", - "cmovnge", - "cmovnl", - "cmovnle", - "cmovno", - "cmovnp", - "cmovns", - "cmovnz", - "cmovo", - "cmovp", - "cmovpe", - "cmovpo", - "cmovs", - "cmovz", - "cmp", - "cmppd", - "cmpps", - "cmps", - "cmpsb", - "cmpsd", - "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", - "dec", - "div", - "divpd", - "divps", - "divsd", - "divss", - "dppd", - "dpps", - "emms", - "enter", - "extractps", - "f2xm1", - "fabs", - "fadd", - "faddp", - "fbld", - "fbstp", - "fchs", - "fclex", - "fcmova", - "fcmovae", - "fcmovb", - "fcmovbe", - "fcmovc", - "fcmove", - "fcmovg", - "fcmovge", - "fcmovl", - "fcmovle", - "fcmovna", - "fcmovnae", - "fcmovnb", - "fcmovnbe", - "fcmovnc", - "fcmovne", - "fcmovng", - "fcmovnge", - "fcmovnl", - "fcmovnle", - "fcmovno", - "fcmovnp", - "fcmovns", - "fcmovnz", - "fcmovo", - "fcmovp", - "fcmovpe", - "fcmovpo", - "fcmovs", - "fcmovz", - "fcom", - "fcomi", - "fcomip", - "fcomp", - "fcompp", - "fcos", - "fdecstp", - "fdiv", - "fdivp", - "fdivr", - "fdivrp", - "ffree", - "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", - "fninit", - "fnop", - "fnsave", - "fnstcw", - "fnstenv", - "fnstsw", - "fpatan", - "fprem", - "fprem1", - "fptan", - "frndint", - "frstor", - "fsave", - "fscale", - "fsin", - "fsincos", - "fsqrt", - "fst", - "fstcw", - "fstenv", - "fstp", - "fstsw", - "fsub", - "fsubp", - "fsubr", - "fsubrp", - "ftst", - "fucom", - "fucomi", - "fucomip", - "fucomp", - "fucompp", - "fwait", - "fxam", - "fxch", - "fxrstor", - "fxsave", - "fxtract", - "fyl2x", - "fyl2xp1", - "gf2p8affineinvqb", - "gf2p8affineqb", - "gf2p8mulb", - "haddpd", - "haddps", - "hlt", - "hsubpd", - "hsubps", - "idiv", - "imul", - "in", - "inc", - "ins", - "insb", - "insd", - "insertps", - "insw", - "int", - "int1", - "int3", - "into", - "invd", - "invlpg", - "invpcid", - "iret", - "iretd", - "jmp", - "ja", - "jae", - "jb", - "jbe", - "jc", - "jcxz", - "jecxz", - "je", - "jg", - "jge", - "jl", - "jle", - "jna", - "jnae", - "jnb", - "jnbe", - "jnc", - "jne", - "jng", - "jnge", - "jnl", - "jnle", - "jno", - "jnp", - "jns", - "jnz", - "jo", - "jp", - "jpe", - "jpo", - "js", - "jz", - "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", - "lmsw", - "lock", - "lods", - "lodsb", - "lodsd", - "lodsq", - "lodsw", - "loop", - "loopa", - "loopae", - "loopb", - "loopbe", - "loopc", - "loope", - "loopg", - "loopge", - "loopl", - "loople", - "loopna", - "loopnae", - "loopnb", - "loopnbe", - "loopnc", - "loopne", - "loopng", - "loopnge", - "loopnl", - "loopnle", - "loopno", - "loopnp", - "loopns", - "loopnz", - "loopo", - "loopp", - "looppe", - "looppo", - "loops", - "loopz", - "lsl", - "lss", - "ltr", - "lzcnt", - "maskmovdqu", - "maskmovq", - "maxpd", - "maxps", - "maxsd", - "maxss", - "mfence", - "minpd", - "minps", - "minsd", - "minss", - "monitor", - "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", - "movq", - "movq", - "movq2dq", - "movs", - "movsb", - "movsd", - "movsd", - "movshdup", - "movsldup", - "movsq", - "movss", - "movsw", - "movsx", - "movsxd", - "movupd", - "movups", - "movzx", - "mpsadbw", - "mul", - "mulpd", - "mulps", - "mulsd", - "mulss", - "mulx", - "mwait", - "neg", - "nop", - "not", - "or", - "orpd", - "orps", - "out", - "outs", - "outsb", - "outsd", - "outsw", - "pabsb", - "pabsd", - "pabsq", - "pabsw", - "packssdw", - "packsswb", - "packusdw", - "packuswb", - "paddb", - "paddd", - "paddq", - "paddsb", - "paddsw", - "paddusb", - "paddusw", - "paddw", - "palignr", - "pand", - "pandn", - "pause", - "pavgb", - "pavgw", - "pblendvb", - "pblendw", - "pclmulqdq", - "pcmpeqb", - "pcmpeqd", - "pcmpeqq", - "pcmpeqw", - "pcmpestri", - "pcmpestrm", - "pcmpgtb", - "pcmpgtd", - "pcmpgtq", - "pcmpgtw", - "pcmpistri", - "pcmpistrm", - "pdep", - "pext", - "pextrb", - "pextrd", - "pextrq", - "pextrw", - "phaddd", - "phaddsw", - "phaddw", - "phminposuw", - "phsubd", - "phsubsw", - "phsubw", - "pinsrb", - "pinsrd", - "pinsrq", - "pinsrw", - "pmaddubsw", - "pmaddwd", - "pmaxsb", - "pmaxsd", - "pmaxsq", - "pmaxsw", - "pmaxub", - "pmaxud", - "pmaxuq", - "pmaxuw", - "pminsb", - "pminsd", - "pminsq", - "pminsw", - "pminub", - "pminud", - "pminuq", - "pminuw", - "pmovmskb", - "pmovsx", - "pmovzx", - "pmuldq", - "pmulhrsw", - "pmulhuw", - "pmulhw", - "pmulld", - "pmullq", - "pmullw", - "pmuludq", - "pop", - "popa", - "popad", - "popcnt", - "popf", - "popfd", - "popfq", - "por", - "prefetchw", - "prefetchh", - "psadbw", - "pshufb", - "pshufd", - "pshufhw", - "pshuflw", - "pshufw", - "psignb", - "psignd", - "psignw", - "pslld", - "pslldq", - "psllq", - "psllw", - "psrad", - "psraq", - "psraw", - "psrld", - "psrldq", - "psrlq", - "psrlw", - "psubb", - "psubd", - "psubq", - "psubsb", - "psubsw", - "psubusb", - "psubusw", - "psubw", - "ptest", - "ptwrite", - "punpckhbw", - "punpckhdq", - "punpckhqdq", - "punpckhwd", - "punpcklbw", - "punpckldq", - "punpcklqdq", - "punpcklwd", - "push", - "pushw", - "pushd", - "pusha", - "pushad", - "pushf", - "pushfd", - "pushfq", - "pxor", - "rcl", - "rcpps", - "rcpss", - "rcr", - "rdfsbase", - "rdgsbase", - "rdmsr", - "rdpid", - "rdpkru", - "rdpmc", - "rdrand", - "rdseed", - "rdtsc", - "rdtscp", - "rep", - "repe", - "repne", - "repnz", - "repz", - "ret", - "rol", - "ror", - "rorx", - "roundpd", - "roundps", - "roundsd", - "roundss", - "rsm", - "rsqrtps", - "rsqrtss", - "sahf", - "sal", - "sar", - "sarx", - "sbb", - "scas", - "scasb", - "scasd", - "scasw", - "seta", - "setae", - "setb", - "setbe", - "setc", - "sete", - "setg", - "setge", - "setl", - "setle", - "setna", - "setnae", - "setnb", - "setnbe", - "setnc", - "setne", - "setng", - "setnge", - "setnl", - "setnle", - "setno", - "setnp", - "setns", - "setnz", - "seto", - "setp", - "setpe", - "setpo", - "sets", - "setz", - "sfence", - "sgdt", - "sha1msg1", - "sha1msg2", - "sha1nexte", - "sha1rnds4", - "sha256msg1", - "sha256msg2", - "sha256rnds2", - "shl", - "shld", - "shlx", - "shr", - "shrd", - "shrx", - "shufpd", - "shufps", - "sidt", - "sldt", - "smsw", - "sqrtpd", - "sqrtps", - "sqrtsd", - "sqrtss", - "stac", - "stc", - "std", - "sti", - "stmxcsr", - "stos", - "stosb", - "stosd", - "stosq", - "stosw", - "str", - "sub", - "subpd", - "subps", - "subsd", - "subss", - "swapgs", - "syscall", - "sysenter", - "sysexit", - "sysret", - "test", - "tpause", - "tzcnt", - "ucomisd", - "ucomiss", - "ud", - "umonitor", - "umwait", - "unpckhpd", - "unpckhps", - "unpcklpd", - "unpcklps", - "valignd", - "valignq", - "vblendmpd", - "vblendmps", - "vbroadcast", - "vcompresspd", - "vcompressps", - "vcvtpd2qq", - "vcvtpd2udq", - "vcvtpd2uqq", - "vcvtph2ps", - "vcvtps2ph", - "vcvtps2qq", - "vcvtps2udq", - "vcvtps2uqq", - "vcvtqq2pd", - "vcvtqq2ps", - "vcvtsd2usi", - "vcvtss2usi", - "vcvttpd2qq", - "vcvttpd2udq", - "vcvttpd2uqq", - "vcvttps2qq", - "vcvttps2udq", - "vcvttps2uqq", - "vcvttsd2usi", - "vcvttss2usi", - "vcvtudq2pd", - "vcvtudq2ps", - "vcvtuqq2pd", - "vcvtuqq2ps", - "vcvtusi2sd", - "vcvtusi2ss", - "vdbpsadbw", - "verr", - "verw", - "vexpandpd", - "vexpandps", - "vextractf128", - "vextractf32x4", - "vextractf32x8", - "vextractf64x2", - "vextractf64x4", - "vextracti128", - "vextracti32x4", - "vextracti32x8", - "vextracti64x2", - "vextracti64x4", - "vfixupimmpd", - "vfixupimmps", - "vfixupimmsd", - "vfixupimmss", - "vfmadd132pd", - "vfmadd132ps", - "vfmadd132sd", - "vfmadd132ss", - "vfmadd213pd", - "vfmadd213ps", - "vfmadd213sd", - "vfmadd213ss", - "vfmadd231pd", - "vfmadd231ps", - "vfmadd231sd", - "vfmadd231ss", - "vfmaddsub132pd", - "vfmaddsub132ps", - "vfmaddsub213pd", - "vfmaddsub213ps", - "vfmaddsub231pd", - "vfmaddsub231ps", - "vfmsub132pd", - "vfmsub132ps", - "vfmsub132sd", - "vfmsub132ss", - "vfmsub213pd", - "vfmsub213ps", - "vfmsub213sd", - "vfmsub213ss", - "vfmsub231pd", - "vfmsub231ps", - "vfmsub231sd", - "vfmsub231ss", - "vfmsubadd132pd", - "vfmsubadd132ps", - "vfmsubadd213pd", - "vfmsubadd213ps", - "vfmsubadd231pd", - "vfmsubadd231ps", - "vfnmadd132pd", - "vfnmadd132ps", - "vfnmadd132sd", - "vfnmadd132ss", - "vfnmadd213pd", - "vfnmadd213ps", - "vfnmadd213sd", - "vfnmadd213ss", - "vfnmadd231pd", - "vfnmadd231ps", - "vfnmadd231sd", - "vfnmadd231ss", - "vfnmsub132pd", - "vfnmsub132ps", - "vfnmsub132sd", - "vfnmsub132ss", - "vfnmsub213pd", - "vfnmsub213ps", - "vfnmsub213sd", - "vfnmsub213ss", - "vfnmsub231pd", - "vfnmsub231ps", - "vfnmsub231sd", - "vfnmsub231ss", - "vfpclasspd", - "vfpclassps", - "vfpclasssd", - "vfpclassss", - "vgatherdpd", - "vgatherdpd", - "vgatherdps", - "vgatherdps", - "vgatherqpd", - "vgatherqpd", - "vgatherqps", - "vgatherqps", - "vgetexppd", - "vgetexpps", - "vgetexpsd", - "vgetexpss", - "vgetmantpd", - "vgetmantps", - "vgetmantsd", - "vgetmantss", - "vinsertf128", - "vinsertf32x4", - "vinsertf32x8", - "vinsertf64x2", - "vinsertf64x4", - "vinserti128", - "vinserti32x4", - "vinserti32x8", - "vinserti64x2", - "vinserti64x4", - "vmaskmov", - "vmovdqa32", - "vmovdqa64", - "vmovdqu16", - "vmovdqu32", - "vmovdqu64", - "vmovdqu8", - "vpblendd", - "vpblendmb", - "vpblendmd", - "vpblendmq", - "vpblendmw", - "vpbroadcast", - "vpbroadcastb", - "vpbroadcastd", - "vpbroadcastm", - "vpbroadcastq", - "vpbroadcastw", - "vpcmpb", - "vpcmpd", - "vpcmpq", - "vpcmpub", - "vpcmpud", - "vpcmpuq", - "vpcmpuw", - "vpcmpw", - "vpcompressd", - "vpcompressq", - "vpconflictd", - "vpconflictq", - "vperm2f128", - "vperm2i128", - "vpermb", - "vpermd", - "vpermi2b", - "vpermi2d", - "vpermi2pd", - "vpermi2ps", - "vpermi2q", - "vpermi2w", - "vpermilpd", - "vpermilps", - "vpermpd", - "vpermps", - "vpermq", - "vpermt2b", - "vpermt2d", - "vpermt2pd", - "vpermt2ps", - "vpermt2q", - "vpermt2w", - "vpermw", - "vpexpandd", - "vpexpandq", - "vpgatherdd", - "vpgatherdd", - "vpgatherdq", - "vpgatherdq", - "vpgatherqd", - "vpgatherqd", - "vpgatherqq", - "vpgatherqq", - "vplzcntd", - "vplzcntq", - "vpmadd52huq", - "vpmadd52luq", - "vpmaskmov", - "vpmovb2m", - "vpmovd2m", - "vpmovdb", - "vpmovdw", - "vpmovm2b", - "vpmovm2d", - "vpmovm2q", - "vpmovm2w", - "vpmovq2m", - "vpmovqb", - "vpmovqd", - "vpmovqw", - "vpmovsdb", - "vpmovsdw", - "vpmovsqb", - "vpmovsqd", - "vpmovsqw", - "vpmovswb", - "vpmovusdb", - "vpmovusdw", - "vpmovusqb", - "vpmovusqd", - "vpmovusqw", - "vpmovuswb", - "vpmovw2m", - "vpmovwb", - "vpmultishiftqb", - "vprold", - "vprolq", - "vprolvd", - "vprolvq", - "vprord", - "vprorq", - "vprorvd", - "vprorvq", - "vpscatterdd", - "vpscatterdq", - "vpscatterqd", - "vpscatterqq", - "vpsllvd", - "vpsllvq", - "vpsllvw", - "vpsravd", - "vpsravq", - "vpsravw", - "vpsrlvd", - "vpsrlvq", - "vpsrlvw", - "vpternlogd", - "vpternlogq", - "vptestmb", - "vptestmd", - "vptestmq", - "vptestmw", - "vptestnmb", - "vptestnmd", - "vptestnmq", - "vptestnmw", - "vrangepd", - "vrangeps", - "vrangesd", - "vrangess", - "vrcp14pd", - "vrcp14ps", - "vrcp14sd", - "vrcp14ss", - "vreducepd", - "vreduceps", - "vreducesd", - "vreducess", - "vrndscalepd", - "vrndscaleps", - "vrndscalesd", - "vrndscaless", - "vrsqrt14pd", - "vrsqrt14ps", - "vrsqrt14sd", - "vrsqrt14ss", - "vscalefpd", - "vscalefps", - "vscalefsd", - "vscalefss", - "vscatterdpd", - "vscatterdps", - "vscatterqpd", - "vscatterqps", - "vshuff32x4", - "vshuff64x2", - "vshufi32x4", - "vshufi64x2", - "vtestpd", - "vtestps", - "vzeroall", - "vzeroupper", - "wait", - "wbinvd", - "wrfsbase", - "wrgsbase", - "wrmsr", - "wrpkru", - "xabort", - "xacquire", - "xadd", - "xbegin", - "xchg", - "xend", - "xgetbv", - "xlat", - "xlatb", - "xor", - "xorpd", - "xorps", - "xrelease", - "xrstor", - "xrstors", - "xsave", - "xsavec", - "xsaveopt", - "xsaves", - "xsetbv", - "xtest" + "align", "equ", "org", "while", "load", "store", "times", "repeat", + "display", "err", "assert", "if", "aaa", "aad", "aam", "aas", "adc", + "add", "addpd", "addps", "addsd", "addss", "addsubpd", "addsubps", "adox", + "aesdeclast", "aesenc", "aesenclast", "aesimc", "aeskeygenassist", "and", + "andnpd", "andnps", "andpd", "andps", "arpl", "bextr", "blendpd", + "blendvpd", "blendvps", "blsi", "blsmsk", "blsr", "bndcl", "bndcn", + "bndldx", "bndmk", "bndmov", "bndstx", "bound", "bsf", "bsr", "bswap", + "btc", "btr", "bts", "bzhi", "call", "cbw", "cdq", "cdqe", "clac", "clc", + "cldemote", "clflush", "clflushopt", "cli", "clts", "clwb", "cmc", "cmova", + "cmovb", "cmovbe", "cmovc", "cmove", "cmovg", "cmovge", "cmovl", "cmovle", + "cmovnae", "cmovnb", "cmovnbe", "cmovnc", "cmovne", "cmovng", "cmovnge", + "cmovnle", "cmovno", "cmovnp", "cmovns", "cmovnz", "cmovo", "cmovp", + "cmovpo", "cmovs", "cmovz", "cmp", "cmppd", "cmpps", "cmps", "cmpsb", + "cmpsd", "cmpsq", "cmpss", "cmpsw", "cmpxchg", "cmpxchg16b", "cmpxchg8b", + "comiss", "cpuid", "cqo", "crc32", "cvtdq2pd", "cvtdq2ps", "cvtpd2dq", + "cvtpd2ps", "cvtpi2pd", "cvtpi2ps", "cvtps2dq", "cvtps2pd", "cvtps2pi", + "cvtsd2ss", "cvtsi2sd", "cvtsi2ss", "cvtss2sd", "cvtss2si", "cvttpd2dq", + "cvttps2dq", "cvttps2pi", "cvttsd2si", "cvttss2si", "cwd", "cwde", "daa", + "dec", "div", "divpd", "divps", "divsd", "divss", "dppd", "dpps", "emms", + "extractps", "f2xm1", "fabs", "fadd", "faddp", "fbld", "fbstp", "fchs", + "fcmova", "fcmovae", "fcmovb", "fcmovbe", "fcmovc", "fcmove", "fcmovg", + "fcmovl", "fcmovle", "fcmovna", "fcmovnae", "fcmovnb", "fcmovnbe", + "fcmovne", "fcmovng", "fcmovnge", "fcmovnl", "fcmovnle", "fcmovno", + "fcmovns", "fcmovnz", "fcmovo", "fcmovp", "fcmovpe", "fcmovpo", "fcmovs", + "fcom", "fcomi", "fcomip", "fcomp", "fcompp", "fcos", "fdecstp", "fdiv", + "fdivr", "fdivrp", "ffree", "fiadd", "ficom", "ficomp", "fidiv", "fidivr", + "fimul", "fincstp", "finit", "fist", "fistp", "fisttp", "fisub", "fisubr", + "fld1", "fldcw", "fldenv", "fldl2e", "fldl2t", "fldlg2", "fldln2", "fldpi", + "fmul", "fmulp", "fnclex", "fninit", "fnop", "fnsave", "fnstcw", "fnstenv", + "fpatan", "fprem", "fprem1", "fptan", "frndint", "frstor", "fsave", + "fsin", "fsincos", "fsqrt", "fst", "fstcw", "fstenv", "fstp", "fstsw", + "fsubp", "fsubr", "fsubrp", "ftst", "fucom", "fucomi", "fucomip", "fucomp", + "fwait", "fxam", "fxch", "fxrstor", "fxsave", "fxtract", "fyl2x", + "gf2p8affineinvqb", "gf2p8affineqb", "gf2p8mulb", "haddpd", "haddps", + "hsubpd", "hsubps", "idiv", "imul", "in", "inc", "ins", "insb", "insd", + "insw", "int", "int1", "int3", "into", "invd", "invlpg", "invpcid", "iret", + "jmp", "ja", "jae", "jb", "jbe", "jc", "jcxz", "jecxz", "je", "jg", "jge", + "jle", "jna", "jnae", "jnb", "jnbe", "jnc", "jne", "jng", "jnge", "jnl", + "jno", "jnp", "jns", "jnz", "jo", "jp", "jpe", "jpo", "js", "jz", "kaddb", + "kaddq", "kaddw", "kandb", "kandd", "kandnb", "kandnd", "kandnq", "kandnw", + "kandw", "kmovb", "kmovd", "kmovq", "kmovw", "knotb", "knotd", "knotq", + "korb", "kord", "korq", "kortestb", "kortestd", "kortestq", "kortestw", + "kshiftlb", "kshiftld", "kshiftlq", "kshiftlw", "kshiftrb", "kshiftrd", + "kshiftrw", "ktestb", "ktestd", "ktestq", "ktestw", "kunpckbw", "kunpckdq", + "kxnorb", "kxnord", "kxnorq", "kxnorw", "kxorb", "kxord", "kxorq", "kxorw", + "lar", "lddqu", "ldmxcsr", "lds", "lea", "leave", "les", "lfence", "lfs", + "lgs", "lidt", "lldt", "lmsw", "lock", "lods", "lodsb", "lodsd", "lodsq", + "loop", "loopa", "loopae", "loopb", "loopbe", "loopc", "loope", "loopg", + "loopl", "loople", "loopna", "loopnae", "loopnb", "loopnbe", "loopnc", + "loopng", "loopnge", "loopnl", "loopnle", "loopno", "loopnp", "loopns", + "loopo", "loopp", "looppe", "looppo", "loops", "loopz", "lsl", "lss", + "lzcnt", "maskmovdqu", "maskmovq", "maxpd", "maxps", "maxsd", "maxss", + "minpd", "minps", "minsd", "minss", "monitor", "mov", "movapd", "movaps", + "movd", "movddup", "movdir64b", "movdiri", "movdq2q", "movdqa", "movdqu", + "movhpd", "movhps", "movlhps", "movlpd", "movlps", "movmskpd", "movmskps", + "movntdqa", "movnti", "movntpd", "movntps", "movntq", "movq", "movq", + "movs", "movsb", "movsd", "movsd", "movshdup", "movsldup", "movsq", + "movsw", "movsx", "movsxd", "movupd", "movups", "movzx", "mpsadbw", "mul", + "mulps", "mulsd", "mulss", "mulx", "mwait", "neg", "nop", "not", "or", + "orps", "out", "outs", "outsb", "outsd", "outsw", "pabsb", "pabsd", + "pabsw", "packssdw", "packsswb", "packusdw", "packuswb", "paddb", "paddd", + "paddsb", "paddsw", "paddusb", "paddusw", "paddw", "palignr", "pand", + "pause", "pavgb", "pavgw", "pblendvb", "pblendw", "pclmulqdq", "pcmpeqb", + "pcmpeqq", "pcmpeqw", "pcmpestri", "pcmpestrm", "pcmpgtb", "pcmpgtd", + "pcmpgtw", "pcmpistri", "pcmpistrm", "pdep", "pext", "pextrb", "pextrd", + "pextrw", "phaddd", "phaddsw", "phaddw", "phminposuw", "phsubd", "phsubsw", + "pinsrb", "pinsrd", "pinsrq", "pinsrw", "pmaddubsw", "pmaddwd", "pmaxsb", + "pmaxsq", "pmaxsw", "pmaxub", "pmaxud", "pmaxuq", "pmaxuw", "pminsb", + "pminsq", "pminsw", "pminub", "pminud", "pminuq", "pminuw", "pmovmskb", + "pmovzx", "pmuldq", "pmulhrsw", "pmulhuw", "pmulhw", "pmulld", "pmullq", + "pmuludq", "pop", "popa", "popad", "popcnt", "popf", "popfd", "popfq", + "prefetchw", "prefetchh", "psadbw", "pshufb", "pshufd", "pshufhw", + "pshufw", "psignb", "psignd", "psignw", "pslld", "pslldq", "psllq", + "psrad", "psraq", "psraw", "psrld", "psrldq", "psrlq", "psrlw", "psubb", + "psubq", "psubsb", "psubsw", "psubusb", "psubusw", "psubw", "ptest", + "punpckhbw", "punpckhdq", "punpckhqdq", "punpckhwd", "punpcklbw", + "punpcklqdq", "punpcklwd", "push", "pushw", "pushd", "pusha", "pushad", + "pushfd", "pushfq", "pxor", "rcl", "rcpps", "rcpss", "rcr", "rdfsbase", + "rdmsr", "rdpid", "rdpkru", "rdpmc", "rdrand", "rdseed", "rdtsc", "rdtscp", + "repe", "repne", "repnz", "repz", "ret", "rol", "ror", "rorx", "roundpd", + "roundsd", "roundss", "rsm", "rsqrtps", "rsqrtss", "sahf", "sal", "sar", + "sbb", "scas", "scasb", "scasd", "scasw", "seta", "setae", "setb", "setbe", + "sete", "setg", "setge", "setl", "setle", "setna", "setnae", "setnb", + "setnc", "setne", "setng", "setnge", "setnl", "setnle", "setno", "setnp", + "setnz", "seto", "setp", "setpe", "setpo", "sets", "setz", "sfence", + "sha1msg1", "sha1msg2", "sha1nexte", "sha1rnds4", "sha256msg1", + "sha256rnds2", "shl", "shld", "shlx", "shr", "shrd", "shrx", "shufpd", + "sidt", "sldt", "smsw", "sqrtpd", "sqrtps", "sqrtsd", "sqrtss", "stac", + "std", "sti", "stmxcsr", "stos", "stosb", "stosd", "stosq", "stosw", "str", + "subpd", "subps", "subsd", "subss", "swapgs", "syscall", "sysenter", + "sysret", "test", "tpause", "tzcnt", "ucomisd", "ucomiss", "ud", + "umwait", "unpckhpd", "unpckhps", "unpcklpd", "unpcklps", "valignd", + "vblendmpd", "vblendmps", "vbroadcast", "vcompresspd", "vcompressps", + "vcvtpd2udq", "vcvtpd2uqq", "vcvtph2ps", "vcvtps2ph", "vcvtps2qq", + "vcvtps2uqq", "vcvtqq2pd", "vcvtqq2ps", "vcvtsd2usi", "vcvtss2usi", + "vcvttpd2udq", "vcvttpd2uqq", "vcvttps2qq", "vcvttps2udq", "vcvttps2uqq", + "vcvttss2usi", "vcvtudq2pd", "vcvtudq2ps", "vcvtuqq2pd", "vcvtuqq2ps", + "vcvtusi2ss", "vdbpsadbw", "verr", "verw", "vexpandpd", "vexpandps", + "vextractf32x4", "vextractf32x8", "vextractf64x2", "vextractf64x4", + "vextracti32x4", "vextracti32x8", "vextracti64x2", "vextracti64x4", + "vfixupimmps", "vfixupimmsd", "vfixupimmss", "vfmadd132pd", "vfmadd132ps", + "vfmadd132ss", "vfmadd213pd", "vfmadd213ps", "vfmadd213sd", "vfmadd213ss", + "vfmadd231ps", "vfmadd231sd", "vfmadd231ss", "vfmaddsub132pd", + "vfmaddsub213pd", "vfmaddsub213ps", "vfmaddsub231pd", "vfmaddsub231ps", + "vfmsub132ps", "vfmsub132sd", "vfmsub132ss", "vfmsub213pd", "vfmsub213ps", + "vfmsub213ss", "vfmsub231pd", "vfmsub231ps", "vfmsub231sd", "vfmsub231ss", + "vfmsubadd132ps", "vfmsubadd213pd", "vfmsubadd213ps", "vfmsubadd231pd", + "vfnmadd132pd", "vfnmadd132ps", "vfnmadd132sd", "vfnmadd132ss", + "vfnmadd213ps", "vfnmadd213sd", "vfnmadd213ss", "vfnmadd231pd", + "vfnmadd231sd", "vfnmadd231ss", "vfnmsub132pd", "vfnmsub132ps", + "vfnmsub132ss", "vfnmsub213pd", "vfnmsub213ps", "vfnmsub213sd", + "vfnmsub231pd", "vfnmsub231ps", "vfnmsub231sd", "vfnmsub231ss", + "vfpclassps", "vfpclasssd", "vfpclassss", "vgatherdpd", "vgatherdpd", + "vgatherdps", "vgatherqpd", "vgatherqpd", "vgatherqps", "vgatherqps", + "vgetexpps", "vgetexpsd", "vgetexpss", "vgetmantpd", "vgetmantps", + "vgetmantss", "vinsertf128", "vinsertf32x4", "vinsertf32x8", + "vinsertf64x4", "vinserti128", "vinserti32x4", "vinserti32x8", + "vinserti64x4", "vmaskmov", "vmovdqa32", "vmovdqa64", "vmovdqu16", + "vmovdqu64", "vmovdqu8", "vpblendd", "vpblendmb", "vpblendmd", "vpblendmq", + "vpbroadcast", "vpbroadcastb", "vpbroadcastd", "vpbroadcastm", + "vpbroadcastw", "vpcmpb", "vpcmpd", "vpcmpq", "vpcmpub", "vpcmpud", + "vpcmpuw", "vpcmpw", "vpcompressd", "vpcompressq", "vpconflictd", + "vperm2f128", "vperm2i128", "vpermb", "vpermd", "vpermi2b", "vpermi2d", + "vpermi2ps", "vpermi2q", "vpermi2w", "vpermilpd", "vpermilps", "vpermpd", + "vpermq", "vpermt2b", "vpermt2d", "vpermt2pd", "vpermt2ps", "vpermt2q", + "vpermw", "vpexpandd", "vpexpandq", "vpgatherdd", "vpgatherdd", + "vpgatherdq", "vpgatherqd", "vpgatherqd", "vpgatherqq", "vpgatherqq", + "vplzcntq", "vpmadd52huq", "vpmadd52luq", "vpmaskmov", "vpmovb2m", + "vpmovdb", "vpmovdw", "vpmovm2b", "vpmovm2d", "vpmovm2q", "vpmovm2w", + "vpmovqb", "vpmovqd", "vpmovqw", "vpmovsdb", "vpmovsdw", "vpmovsqb", + "vpmovsqw", "vpmovswb", "vpmovusdb", "vpmovusdw", "vpmovusqb", "vpmovusqd", + "vpmovuswb", "vpmovw2m", "vpmovwb", "vpmultishiftqb", "vprold", "vprolq", + "vprolvq", "vprord", "vprorq", "vprorvd", "vprorvq", "vpscatterdd", + "vpscatterqd", "vpscatterqq", "vpsllvd", "vpsllvq", "vpsllvw", "vpsravd", + "vpsravw", "vpsrlvd", "vpsrlvq", "vpsrlvw", "vpternlogd", "vpternlogq", + "vptestmd", "vptestmq", "vptestmw", "vptestnmb", "vptestnmd", "vptestnmq", + "vrangepd", "vrangeps", "vrangesd", "vrangess", "vrcp14pd", "vrcp14ps", + "vrcp14ss", "vreducepd", "vreduceps", "vreducesd", "vreducess", + "vrndscaleps", "vrndscalesd", "vrndscaless", "vrsqrt14pd", "vrsqrt14ps", + "vrsqrt14ss", "vscalefpd", "vscalefps", "vscalefsd", "vscalefss", + "vscatterdps", "vscatterqpd", "vscatterqps", "vshuff32x4", "vshuff64x2", + "vshufi64x2", "vtestpd", "vtestps", "vzeroall", "vzeroupper", "wait", + "wrfsbase", "wrgsbase", "wrmsr", "wrpkru", "xabort", "xacquire", "xadd", + "xchg", "xend", "xgetbv", "xlat", "xlatb", "xor", "xorpd", "xorps", + "xrstor", "xrstors", "xsave", "xsavec", "xsaveopt", "xsaves", "xsetbv", ] fasm_types = [