Lines Matching refs:cpu

155         self.cpu = set(kwargs.pop("cpu", []))
176 self.cpu.add("386")
278 self.cpu.add("386")
283 self.cpu.add("386")
285 self.cpu.add("386")
287 self.cpu.add("586")
303 maxcpu_set = self.cpu & set(ordered_cpus)
307 for cpu in ordered_cpus[0:maxcpu]:
308 self.cpu.discard(cpu)
324 cpus_str = "|".join("CPU_%s" % x for x in sorted(self.cpu))
330 if self.cpu is not None:
331 if len(self.cpu) > 3:
332 raise ValueError("too many CPUs: %s" % (self.cpu,))
335 cpus_str.extend("CPU_%s" % x for x in sorted(self.cpu))
382 cpu=None, misc_flags=None, only64=False, not64=False,
400 if cpu is None:
401 self.cpu = None
403 self.cpu = set(cpu)
422 if self.cpu is None:
423 self.cpu = set(["AVX"])
428 if self.cpu is not None:
437 if self.cpu is None:
438 self.cpu = set(form.cpu)
440 self.cpu = cpu_lcd(self.cpu, form.cpu)
464 cpu=self.cpu,
476 if self.cpu is not None:
477 if len(self.cpu) > 3:
478 raise ValueError("too many CPUs: %s" % (self.cpu,))
479 cpus_str.extend("CPU_%s" % x for x in sorted(self.cpu))
873 cpu=["Priv"],
880 cpu=["Priv"],
886 cpu=["Priv"],
893 cpu=["Priv"],
899 cpu=["Priv"],
906 cpu=["Priv"],
915 cpu=["Priv"],
921 cpu=["Priv"],
928 cpu=["Priv"],
934 cpu=["Priv"],
942 cpu=["MMX"],
949 cpu=["MMX"],
957 cpu=["MMX"],
964 cpu=["MMX"],
974 cpu=["SSE2"],
982 cpu=["SSE2"],
990 cpu=["SSE2"],
999 cpu=["SSE2"],
1007 cpu=["SSE2"],
1068 cpu=["386"],
1076 cpu=["386"],
1091 cpu=["386"],
1185 cpu=["186"],
1191 cpu=["186"],
1207 cpu=["186"],
1215 cpu=["186"],
1233 cpu=["186"],
1344 add_insn("pusha", "onebyte", modifiers=[0x60, 0], cpu=["186"], not64=True)
1346 cpu=["386"], not64=True)
1348 cpu=["386"], not64=True)
1349 add_insn("pushaw", "onebyte", modifiers=[0x60, 16], cpu=["186"], not64=True)
1404 # cpu=["Undoc", "Obs"],
1473 add_insn("popa", "onebyte", modifiers=[0x61, 0], cpu=["186"], not64=True)
1475 cpu=["386"], not64=True)
1477 cpu=["386"], not64=True)
1478 add_insn("popaw", "onebyte", modifiers=[0x61, 16], cpu=["186"], not64=True)
1655 cpu=["386"],
1701 cpu=["386"],
1719 cpu=["386"],
1759 cpu=["386"],
1776 add_insn("clts", "twobyte", modifiers=[0x0F, 0x06], cpu=["286", "Priv"])
1782 cpu=["386"], not64=True)
1784 cpu=["386"], not64=True)
1789 cpu=["386"], not64=True)
1791 cpu=["386"], not64=True)
2080 add_insn("cwde", "onebyte", modifiers=[0x98, 32], cpu=["386"])
2083 add_insn("cdq", "onebyte", modifiers=[0x99, 32], cpu=["386"])
2090 add_insn("cwtl", "onebyte", parser="gas", modifiers=[0x98, 32], cpu=["386"])
2093 add_insn("cltd", "onebyte", parser="gas", modifiers=[0x99, 32], cpu=["386"])
2109 cpu=["386"],
2117 cpu=["186"],
2126 cpu=["186"],
2134 cpu=["186"],
2145 cpu=["186"],
2177 cpu=["186"],
2210 cpu=["386"],
2219 cpu=["386"],
2230 cpu=["386"],
2450 cpu=["386"],
2510 cpu=["386"],
2687 cpu=["186"],
2696 cpu=["186"],
2707 cpu=["186"],
2721 add_insn("leave", "onebyte", modifiers=[0xC9, 0, 64], cpu=["186"])
2723 cpu=["186"])
2725 cpu=["186"])
2756 cpu=["186"],
2764 cpu=["386"],
2777 cpu=["186"],
2828 add_insn("jecxz", "jcxz", modifiers=[32], cpu=["386"])
2916 cpu=["386"],
2967 add_insn("cmpsd", "cmpsd", cpu=[])
2969 add_insn("cmpsl", "onebyte", parser="gas", modifiers=[0xA7, 32], cpu=["386"])
2973 add_insn("insd", "onebyte", parser="nasm", modifiers=[0x6D, 32], cpu=["386"])
2974 add_insn("insl", "onebyte", parser="gas", modifiers=[0x6D, 32], cpu=["386"])
2978 cpu=["386"])
2979 add_insn("outsl", "onebyte", parser="gas", modifiers=[0x6F, 32], cpu=["386"])
2983 cpu=["386"])
2984 add_insn("lodsl", "onebyte", parser="gas", modifiers=[0xAD, 32], cpu=["386"])
2997 add_insn("movsd", "movsd", cpu=["386"])
2999 add_insn("movsl", "onebyte", parser="gas", modifiers=[0xA5, 32], cpu=["386"])
3004 add_insn("smovl", "onebyte", parser="gas", modifiers=[0xA5, 32], cpu=["386"])
3009 cpu=["386"])
3010 add_insn("scasl", "onebyte", parser="gas", modifiers=[0xAF, 32], cpu=["386"])
3015 add_insn("sscal", "onebyte", parser="gas", modifiers=[0xAF, 32], cpu=["386"])
3020 cpu=["386"])
3021 add_insn("stosl", "onebyte", parser="gas", modifiers=[0xAB, 32], cpu=["386"])
3035 cpu=["386"],
3044 cpu=["386"],
3069 add_insn("bsf", "bsfr", modifiers=[0xBC], cpu=["386"])
3070 add_insn("bsr", "bsfr", modifiers=[0xBD], cpu=["386"])
3086 cpu=["386"])
3087 add_insn("iretl", "onebyte", parser="gas", modifiers=[0xCF, 32], cpu=["386"])
3089 add_insn("rsm", "twobyte", modifiers=[0x0F, 0xAA], cpu=["586", "SMM"])
3094 cpu=["186"],
3102 add_insn("hlt", "onebyte", modifiers=[0xF4], cpu=["Priv"])
3124 add_insn("lar", "larlsl", modifiers=[0x02], cpu=["286", "Prot"])
3125 add_insn("lsl", "larlsl", modifiers=[0x03], cpu=["286", "Prot"])
3129 cpu=["Prot", "286"],
3139 modifiers=[2, 0x0F, 0x01], cpu=["286", "Priv"])
3141 modifiers=[3, 0x0F, 0x01], cpu=["286", "Priv"])
3143 modifiers=[0, 0x0F, 0x01], cpu=["286", "Priv"])
3145 modifiers=[1, 0x0F, 0x01], cpu=["286", "Priv"])
3150 cpu=["Prot", "286"],
3157 cpu=["Prot", "286"],
3166 cpu=["286"],
3172 add_insn("lldt", "prot286", modifiers=[2, 0], cpu=["286", "Prot", "Priv"])
3173 add_insn("ltr", "prot286", modifiers=[3, 0], cpu=["286", "Prot", "Priv"])
3174 add_insn("verr", "prot286", modifiers=[4, 0], cpu=["286", "Prot"])
3175 add_insn("verw", "prot286", modifiers=[5, 0], cpu=["286", "Prot"])
3176 add_insn("lmsw", "prot286", modifiers=[6, 1], cpu=["286", "Priv"])
3182 cpu=[(sz==32) and "386" or "286"],
3190 cpu=["286"],
3203 add_insn("fcompp", "twobyte", modifiers=[0xDE, 0xD9], cpu=["FPU"])
3204 add_insn("fucompp", "twobyte", modifiers=[0xDA, 0xE9], cpu=["286", "FPU"])
3205 add_insn("ftst", "twobyte", modifiers=[0xD9, 0xE4], cpu=["FPU"])
3206 add_insn("fxam", "twobyte", modifiers=[0xD9, 0xE5], cpu=["FPU"])
3207 add_insn("fld1", "twobyte", modifiers=[0xD9, 0xE8], cpu=["FPU"])
3208 add_insn("fldl2t", "twobyte", modifiers=[0xD9, 0xE9], cpu=["FPU"])
3209 add_insn("fldl2e", "twobyte", modifiers=[0xD9, 0xEA], cpu=["FPU"])
3210 add_insn("fldpi", "twobyte", modifiers=[0xD9, 0xEB], cpu=["FPU"])
3211 add_insn("fldlg2", "twobyte", modifiers=[0xD9, 0xEC], cpu=["FPU"])
3212 add_insn("fldln2", "twobyte", modifiers=[0xD9, 0xED], cpu=["FPU"])
3213 add_insn("fldz", "twobyte", modifiers=[0xD9, 0xEE], cpu=["FPU"])
3214 add_insn("f2xm1", "twobyte", modifiers=[0xD9, 0xF0], cpu=["FPU"])
3215 add_insn("fyl2x", "twobyte", modifiers=[0xD9, 0xF1], cpu=["FPU"])
3216 add_insn("fptan", "twobyte", modifiers=[0xD9, 0xF2], cpu=["FPU"])
3217 add_insn("fpatan", "twobyte", modifiers=[0xD9, 0xF3], cpu=["FPU"])
3218 add_insn("fxtract", "twobyte", modifiers=[0xD9, 0xF4], cpu=["FPU"])
3219 add_insn("fprem1", "twobyte", modifiers=[0xD9, 0xF5], cpu=["286", "FPU"])
3220 add_insn("fdecstp", "twobyte", modifiers=[0xD9, 0xF6], cpu=["FPU"])
3221 add_insn("fincstp", "twobyte", modifiers=[0xD9, 0xF7], cpu=["FPU"])
3222 add_insn("fprem", "twobyte", modifiers=[0xD9, 0xF8], cpu=["FPU"])
3223 add_insn("fyl2xp1", "twobyte", modifiers=[0xD9, 0xF9], cpu=["FPU"])
3224 add_insn("fsqrt", "twobyte", modifiers=[0xD9, 0xFA], cpu=["FPU"])
3225 add_insn("fsincos", "twobyte", modifiers=[0xD9, 0xFB], cpu=["286", "FPU"])
3226 add_insn("frndint", "twobyte", modifiers=[0xD9, 0xFC], cpu=["FPU"])
3227 add_insn("fscale", "twobyte", modifiers=[0xD9, 0xFD], cpu=["FPU"])
3228 add_insn("fsin", "twobyte", modifiers=[0xD9, 0xFE], cpu=["286", "FPU"])
3229 add_insn("fcos", "twobyte", modifiers=[0xD9, 0xFF], cpu=["286", "FPU"])
3230 add_insn("fchs", "twobyte", modifiers=[0xD9, 0xE0], cpu=["FPU"])
3231 add_insn("fabs", "twobyte", modifiers=[0xD9, 0xE1], cpu=["FPU"])
3232 add_insn("fninit", "twobyte", modifiers=[0xDB, 0xE3], cpu=["FPU"])
3233 add_insn("finit", "threebyte", modifiers=[0x9B, 0xDB, 0xE3], cpu=["FPU"])
3234 add_insn("fnclex", "twobyte", modifiers=[0xDB, 0xE2], cpu=["FPU"])
3235 add_insn("fclex", "threebyte", modifiers=[0x9B, 0xDB, 0xE2], cpu=["FPU"])
3238 modifiers=[6, 0xD9], cpu=["FPU"])
3240 modifiers=[6, 0x9B, 0xD9], cpu=["FPU"])
3242 modifiers=[4, 0xD9], cpu=["FPU"])
3244 modifiers=[6, 0xDD], cpu=["FPU"])
3246 modifiers=[6, 0x9B, 0xDD], cpu=["FPU"])
3248 modifiers=[4, 0xDD], cpu=["FPU"])
3249 add_insn("fnop", "twobyte", modifiers=[0xD9, 0xD0], cpu=["FPU"])
3250 add_insn("fwait", "onebyte", modifiers=[0x9B], cpu=["FPU"])
3259 cpu=["FPU"],
3264 cpu=["FPU"],
3268 cpu=["FPU"],
3273 cpu=["FPU"],
3281 cpu=["FPU"],
3287 cpu=["FPU"],
3292 cpu=["FPU"],
3297 cpu=["FPU"],
3307 cpu=["FPU"],
3318 cpu=["FPU"],
3325 cpu=["FPU"],
3332 cpu=["FPU"],
3339 cpu=["FPU"],
3350 cpu=["FPU"],
3366 cpu=["FPU"],
3372 cpu=["FPU"],
3377 cpu=["FPU"],
3387 cpu=["FPU"],
3391 cpu=["FPU"],
3396 cpu=["FPU"],
3401 cpu=["FPU"],
3412 cpu=["FPU"],
3419 cpu=["FPU"],
3425 cpu=["FPU"],
3431 cpu=["FPU"],
3439 cpu=["FPU"],
3445 cpu=["FPU"],
3459 cpu=["FPU", "286"],
3464 cpu=["FPU", "286"],
3478 cpu=["FPU"],
3485 cpu=["FPU"],
3491 cpu=["FPU"],
3496 cpu=["FPU"],
3502 cpu=["FPU"],
3507 cpu=["FPU"],
3514 cpu=["FPU"],
3529 cpu=["FPU"],
3534 cpu=["FPU"],
3539 cpu=["FPU"],
3561 cpu=["FPU"],
3568 cpu=["FPU"],
3589 cpu=["FPU"],
3600 cpu=["FPU"],
3609 cpu=["FPU"],
3615 cpu=["FPU"],
3623 cpu=["FPU"],
3629 cpu=["FPU"],
3636 cpu=["FPU"],
3642 add_insn("ffreep", "ffree", modifiers=[0xDF], cpu=["686", "FPU", "Undoc"])
3649 cpu=["486"],
3664 cpu=["486"],
3674 cpu=["486", "Undoc"])
3676 add_insn("invd", "twobyte", modifiers=[0x0F, 0x08], cpu=["486", "Priv"])
3677 add_insn("wbinvd", "twobyte", modifiers=[0x0F, 0x09], cpu=["486", "Priv"])
3679 cpu=["486", "Priv"])
3684 add_insn("cpuid", "twobyte", modifiers=[0x0F, 0xA2], cpu=["486"])
3689 add_insn("wrmsr", "twobyte", modifiers=[0x0F, 0x30], cpu=["586", "Priv"])
3690 add_insn("rdtsc", "twobyte", modifiers=[0x0F, 0x31], cpu=["586"])
3691 add_insn("rdmsr", "twobyte", modifiers=[0x0F, 0x32], cpu=["586", "Priv"])
3695 cpu=["586"],
3705 add_insn("sysenter", "twobyte", modifiers=[0x0F, 0x34], cpu=["686"],
3707 add_insn("sysexit", "twobyte", modifiers=[0x0F, 0x35], cpu=["686", "Priv"],
3711 modifiers=[0, 0x0F, 0xAE], cpu=["686", "FPU"])
3713 modifiers=[1, 0x0F, 0xAE], cpu=["686", "FPU"])
3714 add_insn("rdpmc", "twobyte", modifiers=[0x0F, 0x33], cpu=["686"])
3715 add_insn("ud2", "twobyte", modifiers=[0x0F, 0x0B], cpu=["286"])
3716 add_insn("ud1", "twobyte", modifiers=[0x0F, 0xB9], cpu=["286", "Undoc"])
3721 cpu=["686"],
3760 cpu=["FPU", "686"],
3775 add_insn("fcomi", "fcom2", modifiers=[0xDB, 0xF0], cpu=["686", "FPU"])
3776 add_insn("fucomi", "fcom2", modifiers=[0xDB, 0xE8], cpu=["686", "FPU"])
3777 add_insn("fcomip", "fcom2", modifiers=[0xDF, 0xF0], cpu=["686", "FPU"])
3778 add_insn("fucomip", "fcom2", modifiers=[0xDF, 0xE8], cpu=["686", "FPU"])
3785 cpu=["P4"],
3791 cpu=["P4"],
3800 cpu=["P3"],
3807 add_insn("lfence", "threebyte", modifiers=[0x0F, 0xAE, 0xE8], cpu=["P3"])
3808 add_insn("mfence", "threebyte", modifiers=[0x0F, 0xAE, 0xF0], cpu=["P3"])
3809 add_insn("pause", "onebyte_prefix", modifiers=[0xF3, 0x90], cpu=["P4"])
3815 add_insn("emms", "twobyte", modifiers=[0x0F, 0x77], cpu=["MMX"])
3821 cpu=["MMX"],
3826 cpu=["MMX"],
3832 cpu=["MMX"],
3837 cpu=["MMX"],
3843 cpu=["SSE2"],
3849 cpu=["SSE2"],
3856 cpu=["SSE2"],
3862 cpu=["SSE2"],
3877 cpu=["MMX"],
3883 cpu=["MMX"],
3890 cpu=["MMX"],
3896 cpu=["MMX"],
3905 cpu=["SSE2"],
3912 cpu=["SSE2"],
3919 cpu=["SSE2"],
3927 cpu=["SSE2"],
3934 cpu=["SSE2"],
3945 cpu=["MMX"],
3951 cpu=["SSE2"],
4038 cpu=["MMX"],
4044 cpu=["MMX"],
4051 cpu=["SSE2"],
4058 cpu=["SSE2"],
4076 for cpu, sz in zip(["AVX", "AVX2"], [128, 256]):
4078 cpu=[cpu],
4086 cpu=[cpu],
4095 cpu=[cpu],
4104 cpu=[cpu],
4126 add_insn("pavgb", "mmxsse2", modifiers=[0xE0], cpu=["P3", "MMX"])
4127 add_insn("pavgw", "mmxsse2", modifiers=[0xE3], cpu=["P3", "MMX"])
4128 add_insn("pmaxsw", "mmxsse2", modifiers=[0xEE], cpu=["P3", "MMX"])
4129 add_insn("pmaxub", "mmxsse2", modifiers=[0xDE], cpu=["P3", "MMX"])
4130 add_insn("pminsw", "mmxsse2", modifiers=[0xEA], cpu=["P3", "MMX"])
4131 add_insn("pminub", "mmxsse2", modifiers=[0xDA], cpu=["P3", "MMX"])
4132 add_insn("pmulhuw", "mmxsse2", modifiers=[0xE4], cpu=["P3", "MMX"])
4133 add_insn("psadbw", "mmxsse2", modifiers=[0xF6], cpu=["P3", "MMX"])
4145 add_insn("prefetchnta", "twobytemem", modifiers=[0, 0x0F, 0x18], cpu=["P3"])
4146 add_insn("prefetcht0", "twobytemem", modifiers=[1, 0x0F, 0x18], cpu=["P3"])
4147 add_insn("prefetcht1", "twobytemem", modifiers=[2, 0x0F, 0x18], cpu=["P3"])
4148 add_insn("prefetcht2", "twobytemem", modifiers=[3, 0x0F, 0x18], cpu=["P3"])
4150 add_insn("sfence", "threebyte", modifiers=[0x0F, 0xAE, 0xF8], cpu=["P3"])
4153 cpu=["SSE"],
4160 cpu=["AVX"],
4169 cpu=["AVX"],
4177 cpu=["AVX"],
4188 cpu=["SSE"],
4195 cpu=["AVX"],
4204 cpu=["AVX2"],
4212 cpu=["AVX2"],
4223 cpu=["SSE"],
4230 cpu=["AVX"],
4271 cpu=["SSE"],
4279 cpu=["SSE"],
4288 cpu=["SSE"],
4297 cpu=["SSE"],
4311 cpu=["SSE"],
4317 cpu=["SSE"],
4327 cpu=["SSE"],
4339 cpu=["SSE"],
4347 cpu=["SSE"],
4357 cpu=["SSE"],
4366 cpu=["AVX"],
4377 cpu=["AVX"],
4387 cpu=["AVX"],
4401 cpu=["SSE"],
4408 cpu=["SSE"],
4415 cpu=["AVX"],
4424 cpu=["AVX"],
4457 cpu=["SSE"],
4463 cpu=["AVX"],
4471 cpu=["AVX"],
4480 cpu=["SSE"],
4487 cpu=["SSE"],
4494 cpu=["AVX"],
4503 cpu=["AVX"],
4561 cpu=["SSE"],
4573 cpu=["SSE"],
4580 cpu=["AVX2"],
4590 cpu=["SSE"],
4597 cpu=["AVX"],
4606 cpu=["AVX"],
4619 cpu=["SSE"],
4627 cpu=["SSE"],
4635 cpu=["AVX"],
4645 cpu=["AVX"],
4659 cpu=["SSE"],
4671 cpu=["MMX", "P3"],
4681 cpu=["SSE"],
4689 cpu=["SSE"],
4697 cpu=["AVX"],
4704 cpu=["AVX"],
4711 cpu=["AVX"],
4718 cpu=["AVX"],
4731 cpu=["SSE"],
4737 cpu=["AVX"],
4751 cpu=["SSE"],
4758 cpu=["SSE"],
4765 cpu=["AVX"],
4781 cpu=["SSE"],
4789 cpu=["SSE"],
4798 cpu=["AVX"],
4807 cpu=["SSE"],
4820 cpu=["SSE"],
4827 cpu=["AVX"],
4839 cpu=["SSE"],
4847 cpu=["SSE"],
4854 cpu=["SSE"],
4861 cpu=["SSE"],
4868 cpu=["AVX"],
4881 cpu=["MMX", "P3"],
4889 cpu=["SSE2"],
4898 cpu=["MMX", "P3"],
4907 cpu=["SSE2"],
4917 cpu=["SSE41"],
4925 cpu=["SSE41"],
4934 cpu=["SSE41"],
4948 cpu=["MMX", "P3"],
4956 cpu=["MMX", "P3"],
4966 cpu=["MMX", "P3"],
4974 cpu=["SSE2"],
4983 cpu=["SSE2"],
4994 cpu=["SSE2"],
5003 cpu=["AVX"],
5013 cpu=["AVX"],
5025 cpu=["AVX"],
5039 cpu=["MMX", "P3"],
5046 cpu=["SSE2"],
5054 cpu=["AVX2"],
5062 cpu=["MMX", "P3"],
5071 cpu=["SSE2"],
5081 cpu=["SSE2"],
5094 cpu=["MMX", "P3"],
5106 cpu=["SSE2"],
5113 cpu=["SSE2"],
5120 cpu=["AVX"],
5129 cpu=["AVX"],
5162 add_insn("addpd", "xmm_xmm128", modifiers=[0x66, 0x58], cpu=["SSE2"])
5163 add_insn("andnpd", "xmm_xmm128", modifiers=[0x66, 0x55], cpu=["SSE2"])
5164 add_insn("andpd", "xmm_xmm128", modifiers=[0x66, 0x54], cpu=["SSE2"])
5165 add_insn("cvtdq2ps", "xmm_xmm128", modifiers=[0, 0x5B], cpu=["SSE2"])
5166 add_insn("cvtpd2dq", "xmm_xmm128", modifiers=[0xF2, 0xE6], cpu=["SSE2"])
5167 add_insn("cvtpd2ps", "xmm_xmm128", modifiers=[0x66, 0x5A], cpu=["SSE2"])
5168 add_insn("cvtps2dq", "xmm_xmm128", modifiers=[0x66, 0x5B], cpu=["SSE2"])
5169 add_insn("divpd", "xmm_xmm128", modifiers=[0x66, 0x5E], cpu=["SSE2"])
5170 add_insn("maxpd", "xmm_xmm128", modifiers=[0x66, 0x5F], cpu=["SSE2"])
5171 add_insn("minpd", "xmm_xmm128", modifiers=[0x66, 0x5D], cpu=["SSE2"])
5172 add_insn("mulpd", "xmm_xmm128", modifiers=[0x66, 0x59], cpu=["SSE2"])
5173 add_insn("orpd", "xmm_xmm128", modifiers=[0x66, 0x56], cpu=["SSE2"])
5174 add_insn("sqrtpd", "xmm_xmm128", modifiers=[0x66, 0x51], cpu=["SSE2"])
5175 add_insn("subpd", "xmm_xmm128", modifiers=[0x66, 0x5C], cpu=["SSE2"])
5176 add_insn("unpckhpd", "xmm_xmm128", modifiers=[0x66, 0x15], cpu=["SSE2"])
5177 add_insn("unpcklpd", "xmm_xmm128", modifiers=[0x66, 0x14], cpu=["SSE2"])
5178 add_insn("xorpd", "xmm_xmm128", modifiers=[0x66, 0x57], cpu=["SSE2"])
5197 cpu=["SSE2"],
5204 cpu=["SSE2"],
5211 cpu=["AVX"],
5220 cpu=["AVX"],
5237 add_insn("cmppd", "xmm_xmm128_imm", modifiers=[0x66, 0xC2], cpu=["SSE2"])
5238 add_insn("shufpd", "xmm_xmm128_imm", modifiers=[0x66, 0xC6], cpu=["SSE2"])
5242 add_insn("cvtsi2sd", "cvt_xmm_rmx", modifiers=[0xF2, 0x2A], cpu=["SSE2"])
5247 cpu=["SSE2"],
5255 cpu=["SSE2"],
5264 cpu=["SSE2"],
5273 cpu=["SSE2"],
5285 cpu=["SSE2"],
5292 add_insn("cvtpd2pi", "cvt_mm_xmm", modifiers=[0x66, 0x2D], cpu=["SSE2"])
5295 cpu=["SSE"],
5302 add_insn("cvtpi2pd", "cvt_xmm_mm_ss", modifiers=[0x66, 0x2A], cpu=["SSE2"])
5306 cpu=["SSE2"],
5314 cpu=["SSE2"],
5322 cpu=["AVX"],
5331 cpu=["AVX"],
5343 add_insn("movapd", "movau", modifiers=[0x66, 0x28, 0x01], cpu=["SSE2"])
5344 add_insn("movupd", "movau", modifiers=[0x66, 0x10, 0x01], cpu=["SSE2"])
5348 add_insn("movhpd", "movhlp", modifiers=[0x66, 0x16], cpu=["SSE2"])
5349 add_insn("movlpd", "movhlp", modifiers=[0x66, 0x12], cpu=["SSE2"])
5353 add_insn("movmskpd", "movmsk", modifiers=[0x66], cpu=["SSE2"])
5356 add_insn("movntpd", "movnt", modifiers=[0x66, 0x2B], cpu=["SSE2"])
5357 add_insn("movntdq", "movnt", modifiers=[0x66, 0xE7], cpu=["SSE2"])
5363 cpu=["SSE2"],
5370 cpu=["SSE2"],
5377 cpu=["SSE2"],
5384 cpu=["AVX"],
5402 cpu=["EPTVPID"],
5411 cpu=["EPTVPID"],
5420 add_insn("vmcall", "threebyte", modifiers=[0x0F, 0x01, 0xC1], cpu=["P4"])
5421 add_insn("vmlaunch", "threebyte", modifiers=[0x0F, 0x01, 0xC2], cpu=["P4"])
5422 add_insn("vmresume", "threebyte", modifiers=[0x0F, 0x01, 0xC3], cpu=["P4"])
5423 add_insn("vmxoff", "threebyte", modifiers=[0x0F, 0x01, 0xC4], cpu=["P4"])
5428 cpu=["P4"],
5435 cpu=["P4"],
5446 cpu=["P4"],
5453 cpu=["P4"],
5463 cpu=["P4"],
5472 cpu=["P4"],
5483 add_insn("getsec", "twobyte", modifiers=[0x0F, 0x37], cpu=["SMX"])
5485 add_insn("cvttpd2pi", "cvt_mm_xmm", modifiers=[0x66, 0x2C], cpu=["SSE2"])
5486 add_insn("cvttsd2si", "cvt_rx_xmm64", modifiers=[0xF2, 0x2C], cpu=["SSE2"])
5487 add_insn("cvttpd2dq", "xmm_xmm128", modifiers=[0x66, 0xE6], cpu=["SSE2"])
5488 add_insn("cvttps2dq", "xmm_xmm128", modifiers=[0xF3, 0x5B], cpu=["SSE2"])
5489 add_insn("pmuludq", "mmxsse2", modifiers=[0xF4], cpu=["SSE2"])
5490 add_insn("pshufd", "xmm_xmm128_imm", modifiers=[0x66, 0x70], cpu=["SSE2"])
5491 add_insn("pshufhw", "xmm_xmm128_imm", modifiers=[0xF3, 0x70], cpu=["SSE2"])
5492 add_insn("pshuflw", "xmm_xmm128_imm", modifiers=[0xF2, 0x70], cpu=["SSE2"])
5493 add_insn("punpckhqdq", "xmm_xmm128", modifiers=[0x66, 0x6D], cpu=["SSE2"])
5494 add_insn("punpcklqdq", "xmm_xmm128", modifiers=[0x66, 0x6C], cpu=["SSE2"])
5506 add_insn("cvtss2sd", "xmm_xmm32", modifiers=[0xF3, 0x5A], cpu=["SSE2"])
5510 cpu=["SSE2"],
5520 add_insn("movdqa", "movau", modifiers=[0x66, 0x6F, 0x10], cpu=["SSE2"])
5521 add_insn("movdqu", "movau", modifiers=[0xF3, 0x6F, 0x10], cpu=["SSE2"])
5526 cpu=["SSE2"],
5535 cpu=["SSE2"],
5544 cpu=["SSE2"],
5552 cpu=["SSE2"],
5561 cpu=["AVX2"],
5570 cpu=["AVX2"],
5588 add_insn("addsubpd", "xmm_xmm128", modifiers=[0x66, 0xD0], cpu=["SSE3"])
5589 add_insn("addsubps", "xmm_xmm128", modifiers=[0xF2, 0xD0], cpu=["SSE3"])
5590 add_insn("haddpd", "xmm_xmm128", modifiers=[0x66, 0x7C], cpu=["SSE3"])
5591 add_insn("haddps", "xmm_xmm128", modifiers=[0xF2, 0x7C], cpu=["SSE3"])
5592 add_insn("hsubpd", "xmm_xmm128", modifiers=[0x66, 0x7D], cpu=["SSE3"])
5593 add_insn("hsubps", "xmm_xmm128", modifiers=[0xF2, 0x7D], cpu=["SSE3"])
5602 add_insn("movshdup", "xmm_xmm128", modifiers=[0xF3, 0x16], cpu=["SSE3"])
5603 add_insn("movsldup", "xmm_xmm128", modifiers=[0xF3, 0x12], cpu=["SSE3"])
5604 add_insn("fisttp", "fildstp", modifiers=[1, 0, 1], cpu=["SSE3"])
5605 add_insn("fisttpll", "fildstp", suffix="q", modifiers=[7], cpu=["SSE3"])
5606 add_insn("movddup", "xmm_xmm64", modifiers=[0xF2, 0x12], cpu=["SSE3"])
5607 add_insn("monitor", "threebyte", modifiers=[0x0F, 0x01, 0xC8], cpu=["SSE3"])
5608 add_insn("mwait", "threebyte", modifiers=[0x0F, 0x01, 0xC9], cpu=["SSE3"])
5611 cpu=["SSE3"],
5618 cpu=["AVX"],
5633 cpu=["SSSE3"],
5640 cpu=["SSSE3"],
5647 cpu=["AVX"],
5656 cpu=["AVX2"],
5664 cpu=["AVX2"],
5704 cpu=["SSSE3"],
5711 cpu=["SSSE3"],
5727 cpu=["SSE41"],
5734 cpu=["AVX"],
5777 cpu=["SSE41"],
5785 cpu=["AVX"],
5795 cpu=["AVX"],
5804 cpu=["AVX"],
5816 cpu=["SSE41"],
5824 cpu=["AVX"],
5834 cpu=["AVX2"],
5843 cpu=["AVX2"],
5855 cpu=["SSE41"],
5863 cpu=["AVX"],
5875 cpu=["SSE41"],
5883 cpu=["SSE41"],
5891 cpu=["AVX"],
5901 cpu=["AVX"],
5935 cpu=["SSE41"],
5942 cpu=["SSE41"],
5956 cpu=["AVX"],
5966 cpu=["AVX"],
5981 cpu=["AVX2"],
5991 cpu=["AVX2"],
6006 cpu=["SSE42"],
6015 cpu=["SSE42"],
6025 cpu=["SSE41"],
6033 cpu=["SSE41"],
6046 cpu=["SSE41"],
6054 cpu=["SSE41"],
6062 cpu=["AVX"],
6071 cpu=["AVX"],
6084 cpu=["SSE41"],
6091 cpu=["AVX2"],
6102 cpu=["SSE42"],
6121 cpu=["SSE41"],
6129 cpu=["SSE41"],
6137 cpu=["SSE41"],
6150 cpu=["SSE41"],
6162 cpu=["SSE41"],
6175 cpu=["SSE41"],
6183 cpu=["SSE41"],
6191 cpu=["AVX"],
6200 cpu=["AVX"],
6213 cpu=["SSE41"],
6221 cpu=["AVX"],
6234 cpu=["SSE41"],
6243 cpu=["AVX"],
6258 cpu=["SSE41"],
6265 cpu=["SSE41"],
6272 cpu=["AVX2"],
6280 cpu=["AVX2"],
6328 add_insn("popcnt", "cnt", modifiers=[0xB8], cpu=["SSE42"])
6338 cpu=["AVX"],
6345 cpu=["AVX"],
6355 cpu=["AVX"],
6362 cpu=["AVX"],
6369 cpu=["AVX"],
6376 cpu=["AVX"],
6384 cpu=["AVX"],
6396 cpu=["AVX"],
6404 cpu=["AVX"],
6423 cpu=["SSE41"],
6432 cpu=["AVX"],
6441 cpu=["AVX"],
6454 cpu=["AVX"],
6462 cpu=["AVX"],
6470 cpu=["AVX"],
6483 cpu=["SSE2"],
6491 cpu=["SSE2"],
6505 cpu=["SSE"],
6513 cpu=["SSE"],
6526 cpu=["AVX"],
6534 cpu=["AVX"],
6542 cpu=["AVX"],
6556 cpu=["AVX"],
6566 for cpu, sz in zip(["AVX", "AVX2"], [128, 256]):
6568 cpu=[cpu],
6582 cpu=["AVX"],
6590 cpu=["AVX"],
6599 cpu=["AVX"],
6607 cpu=["AVX"],
6632 cpu=["AVX"],
6639 cpu=["AVX"],
6646 cpu=["AVX2"],
6653 cpu=["AVX2"],
6663 cpu=["AVX"],
6670 cpu=["AVX2"],
6687 add_insn("vbroadcastf128", "vbroadcastif128", modifiers=[0x1A], cpu=["AVX"])
6688 add_insn("vbroadcasti128", "vbroadcastif128", modifiers=[0x5A], cpu=["AVX2"])
6699 add_insn("vextractf128", "vextractif128", modifiers=[0x19], cpu=["AVX"])
6700 add_insn("vextracti128", "vextractif128", modifiers=[0x39], cpu=["AVX2"])
6712 add_insn("vinsertf128", "vinsertif128", modifiers=[0x18], cpu=["AVX"])
6713 add_insn("vinserti128", "vinsertif128", modifiers=[0x38], cpu=["AVX2"])
6716 cpu=["AVX"],
6757 add_insn("vmaskmovps", "vmaskmov", modifiers=[0x2C], cpu=["AVX"])
6758 add_insn("vmaskmovpd", "vmaskmov", modifiers=[0x2D], cpu=["AVX"])
6761 cpu=["AVX"],
6770 cpu=["AVX"],
6779 cpu=["AVX"],
6788 cpu=["AVX"],
6801 cpu=["AVX"],
6821 cpu=["AVX2"],
6836 cpu=["AVX2"],
6850 cpu=["AVX2"],
6864 cpu=["AVX2"],
6874 cpu=["AVX2"],
6887 cpu=["AVX2"],
6897 cpu=["AVX2"],
6910 cpu=["AVX2"],
6920 cpu=["AVX2"],
6933 cpu=["AVX2"],
6943 cpu=["AVX2"],
6955 cpu=["AVX2"],
6967 cpu=["AVX2"],
6984 add_insn("vpmaskmovd", "vmaskmov", modifiers=[0x8C], cpu=["AVX2"])
6989 cpu=["AVX2"],
7001 cpu=["AVX2"],
7015 cpu=["AVX2"],
7030 cpu=["AVX2"],
7040 cpu=["AVX2"],
7053 cpu=["AVX2"],
7063 cpu=["AVX2"],
7076 cpu=["AVX2"],
7086 cpu=["AVX2"],
7099 cpu=["AVX2"],
7109 cpu=["AVX2"],
7127 cpu=["FMA"],
7137 cpu=["FMA"],
7149 cpu=["FMA"],
7159 cpu=["FMA"],
7170 cpu=["FMA"],
7181 cpu=["FMA"],
7192 cpu=["FMA"],
7203 cpu=["FMA"],
7232 cpu=["AES"],
7239 cpu=["AES", "AVX"],
7260 cpu=["AES"],
7272 cpu=["AES"],
7289 cpu=["CLMUL"],
7297 cpu=["CLMUL", "AVX"],
7311 cpu=["CLMUL"],
7318 cpu=["CLMUL", "AVX"],
7338 cpu=["RDRAND"],
7345 cpu=["RDRAND"],
7351 cpu=["RDRAND"],
7361 cpu=["FSGSBASE"],
7369 cpu=["FSGSBASE"],
7414 cpu=["F16C", "AVX"],
7422 cpu=["F16C", "AVX"],
7430 cpu=["F16C", "AVX"],
7438 cpu=["F16C", "AVX"],
7453 cpu=["SSE4a"],
7460 cpu=["SSE4a"],
7469 cpu=["SSE4a"],
7477 cpu=["SSE4a"],
7486 cpu=["SSE4a"],
7495 cpu=["SSE4a"],
7508 cpu=["XOP"],
7515 cpu=["XOP"],
7525 cpu=["XOP"],
7531 cpu=["XOP"],
7539 cpu=["XOP"],
7545 cpu=["XOP"],
7553 cpu=["XOP"],
7562 cpu=["XOP"],
7571 cpu=["XOP"],
7580 cpu=["XOP"],
7592 cpu=["XOP"],
7600 cpu=["XOP"],
7625 cpu=["XOP"],
7651 cpu=["XOP"],
7674 cpu=["XOP"],
7683 cpu=["XOP"],
7694 cpu=["XOP"],
7703 cpu=["XOP"],
7712 cpu=["XOP"],
7723 cpu=["XOP"],
7732 cpu=["XOP"],
7749 cpu=["FMA4"],
7760 cpu=["FMA4"],
7771 cpu=["FMA4"],
7782 cpu=["FMA4"],
7808 cpu=["FMA4"],
7819 cpu=["FMA4"],
7830 cpu=["FMA4"],
7854 cpu=["XSAVE", "386"])
7856 cpu=["XSAVE", "386", "Priv"])
7858 cpu=["XSAVE", "386"])
7860 cpu=["XSAVE", "386"])
7863 cpu=["XSAVEOPT"])
7872 cpu=["XSAVEOPT"], only64=True)
7879 cpu=["MOVBE"],
7885 cpu=["MOVBE"],
7896 add_insn("tzcnt", "cnt", modifiers=[0xBC], cpu=["BMI1"])
7912 cpu=["BMI1"])
7914 cpu=["BMI1"])
7916 cpu=["BMI1"])
7931 cpu=["BMI2"])
7946 cpu=["BMI1"])
7949 cpu=["BMI2"])
7951 cpu=["BMI2"])
7966 cpu=["BMI2"])
7968 cpu=["BMI1"])
7970 cpu=["BMI2"])
7972 cpu=["BMI2"])
7974 cpu=["BMI2"])
7977 cpu=["BMI2"])
7985 cpu=["INVPCID", "Priv"],
7992 cpu=["INVPCID", "Priv"],
8005 add_insn("prefetch", "twobytemem", modifiers=[0x00, 0x0F, 0x0D], cpu=["3DNow"])
8006 add_insn("prefetchw", "twobytemem", modifiers=[0x01, 0x0F, 0x0D], cpu=["3DNow"])
8007 add_insn("femms", "twobyte", modifiers=[0x0F, 0x0E], cpu=["3DNow"])
8010 cpu=["3DNow"],
8018 add_insn("pf2iw", "now3d", modifiers=[0x1C], cpu=["Athlon", "3DNow"])
8027 add_insn("pfnacc", "now3d", modifiers=[0x8A], cpu=["Athlon", "3DNow"])
8028 add_insn("pfpnacc", "now3d", modifiers=[0x8E], cpu=["Athlon", "3DNow"])
8037 add_insn("pi2fw", "now3d", modifiers=[0x0C], cpu=["Athlon", "3DNow"])
8039 add_insn("pswapd", "now3d", modifiers=[0xBB], cpu=["Athlon", "3DNow"])
8045 add_insn("syscall", "twobyte", modifiers=[0x0F, 0x05], cpu=["686", "AMD"])
8048 cpu=["686", "AMD", "Priv"])
8049 add_insn("lzcnt", "cnt", modifiers=[0xBD], cpu=["LZCNT"])
8057 cpu=["686", "AMD", "Priv"])
8072 add_insn("clgi", "threebyte", modifiers=[0x0F, 0x01, 0xDD], cpu=["SVM"])
8073 add_insn("stgi", "threebyte", modifiers=[0x0F, 0x01, 0xDC], cpu=["SVM"])
8074 add_insn("vmmcall", "threebyte", modifiers=[0x0F, 0x01, 0xD9], cpu=["SVM"])
8077 cpu=["SVM"],
8081 cpu=["SVM"],
8089 cpu=["SVM"],
8093 cpu=["SVM"],
8100 cpu=["SVM"],
8105 cpu=["SVM"],
8119 cpu=["PadLock"],
8141 cpu=["MMX", "Cyrix"],
8160 cpu=["MMX", "Cyrix"],
8171 add_insn("smint", "twobyte", modifiers=[0x0F, 0x38], cpu=["686", "Cyrix"])
8172 add_insn("smintold", "twobyte", modifiers=[0x0F, 0x7E], cpu=["486", "Cyrix", "Obs"])
8175 cpu=["Cyrix", "SMM", "686"],
8184 cpu=["Cyrix", "SMM", "486"],
8192 cpu=["Cyrix", "SMM", "486"],
8203 cpu=["Cyrix", "SMM", "486"],
8214 add_insn("fsetpm", "twobyte", modifiers=[0xDB, 0xE4], cpu=["286", "FPU", "Obs"])
8215 add_insn("loadall", "twobyte", modifiers=[0x0F, 0x07], cpu=["386", "Undoc"])
8216 add_insn("loadall286", "twobyte", modifiers=[0x0F, 0x05], cpu=["286", "Undoc"])
8217 add_insn("salc", "onebyte", modifiers=[0xD6], cpu=["Undoc"], not64=True)
8218 add_insn("smi", "onebyte", modifiers=[0xF1], cpu=["386", "Undoc"])
8221 cpu=["Undoc", "Obs", "386"],
8227 cpu=["Undoc", "Obs", "386"],
8236 cpu=["Undoc", "386"],
8241 cpu=["Undoc", "386"],
8247 cpu=["Undoc", "386"],
8253 cpu=["Undoc", "386"],
8258 cpu=["Undoc", "386"],
8264 cpu=["Undoc", "386"],
8273 cpu=["Undoc", "Obs", "386"],
8279 cpu=["Undoc", "Obs", "386"],