Lines Matching full:isa

43 	struct cpuinfo_x86_isa isa = { 0 };  in cpuinfo_x86_detect_isa()  local
111 isa.rdtsc = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00000010)); in cpuinfo_x86_detect_isa()
118 isa.sysenter = !!(basic_info.edx & UINT32_C(0x00000800)); in cpuinfo_x86_detect_isa()
125 isa.syscall = !!(extended_info.edx & UINT32_C(0x00000800)); in cpuinfo_x86_detect_isa()
133 isa.msr = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00000020)); in cpuinfo_x86_detect_isa()
139 isa.clzero = !!(processor_capacity_info.ebx & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
145 isa.clflush = !!(basic_info.edx & UINT32_C(0x00080000)); in cpuinfo_x86_detect_isa()
151 isa.clflushopt = !!(structured_feature_info0.ebx & UINT32_C(0x00800000)); in cpuinfo_x86_detect_isa()
157 isa.mwait = !!(basic_info.ecx & UINT32_C(0x00000008)); in cpuinfo_x86_detect_isa()
163 isa.mwaitx = !!(extended_info.ecx & UINT32_C(0x20000000)); in cpuinfo_x86_detect_isa()
174 isa.emmx = !!(extended_info.edx & UINT32_C(0x01000000)); in cpuinfo_x86_detect_isa()
178 isa.fxsave = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x01000000)); in cpuinfo_x86_detect_isa()
186 isa.xsave = !!(basic_info.ecx & UINT32_C(0x04000000)); in cpuinfo_x86_detect_isa()
194 isa.fpu = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
201 isa.mmx = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00800000)); in cpuinfo_x86_detect_isa()
208isa.mmx_plus = !!((basic_info.edx & UINT32_C(0x02000000)) | (extended_info.edx & UINT32_C(0x004000… in cpuinfo_x86_detect_isa()
215 isa.three_d_now = !!(extended_info.edx & UINT32_C(0x80000000)); in cpuinfo_x86_detect_isa()
221 isa.three_d_now_plus = !!(extended_info.edx & UINT32_C(0x40000000)); in cpuinfo_x86_detect_isa()
228 isa.three_d_now_geode = isa.three_d_now_plus && (uarch == cpuinfo_uarch_geode); in cpuinfo_x86_detect_isa()
248isa.prefetch = !!((extended_info.ecx & UINT32_C(0x00000100)) | (extended_info.edx & UINT32_C(0xE00… in cpuinfo_x86_detect_isa()
255 isa.prefetch = !!(extended_info.edx & UINT32_C(0xC0000000)); in cpuinfo_x86_detect_isa()
270isa.prefetchw = !!((extended_info.ecx & UINT32_C(0x00000100)) | (extended_info.edx & UINT32_C(0xE0… in cpuinfo_x86_detect_isa()
274isa.prefetchw = !!((extended_info.ecx & UINT32_C(0x00000100)) | (extended_info.edx & UINT32_C(0xC0… in cpuinfo_x86_detect_isa()
282 isa.prefetchwt1 = !!(structured_feature_info0.ecx & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
289 isa.sse = !!(basic_info.edx & UINT32_C(0x02000000)); in cpuinfo_x86_detect_isa()
295 isa.sse2 = !!(basic_info.edx & UINT32_C(0x04000000)); in cpuinfo_x86_detect_isa()
302 isa.sse3 = !!(basic_info.ecx & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
309 if (isa.sse3) { in cpuinfo_x86_detect_isa()
310 isa.daz = true; in cpuinfo_x86_detect_isa()
313 if (isa.sse && isa.fxsave) { in cpuinfo_x86_detect_isa()
325 isa.daz = !!(region.mxcsr_mask & UINT32_C(0x00000040)); in cpuinfo_x86_detect_isa()
334 isa.ssse3 = !!(basic_info.ecx & UINT32_C(0x0000200)); in cpuinfo_x86_detect_isa()
341 isa.sse4_1 = !!(basic_info.ecx & UINT32_C(0x00080000)); in cpuinfo_x86_detect_isa()
347 isa.sse4_2 = !!(basic_info.ecx & UINT32_C(0x00100000)); in cpuinfo_x86_detect_isa()
353 isa.sse4a = !!(extended_info.ecx & UINT32_C(0x00000040)); in cpuinfo_x86_detect_isa()
359 isa.misaligned_sse = !!(extended_info.ecx & UINT32_C(0x00000080)); in cpuinfo_x86_detect_isa()
365 isa.avx = avx_regs && !!(basic_info.ecx & UINT32_C(0x10000000)); in cpuinfo_x86_detect_isa()
371 isa.fma3 = avx_regs && !!(basic_info.ecx & UINT32_C(0x00001000)); in cpuinfo_x86_detect_isa()
377 isa.fma4 = avx_regs && !!(extended_info.ecx & UINT32_C(0x00010000)); in cpuinfo_x86_detect_isa()
383 isa.xop = avx_regs && !!(extended_info.ecx & UINT32_C(0x00000800)); in cpuinfo_x86_detect_isa()
389 isa.f16c = avx_regs && !!(basic_info.ecx & UINT32_C(0x20000000)); in cpuinfo_x86_detect_isa()
395 isa.avx2 = avx_regs && !!(structured_feature_info0.ebx & UINT32_C(0x00000020)); in cpuinfo_x86_detect_isa()
401 isa.avx512f = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x00010000)); in cpuinfo_x86_detect_isa()
407 isa.avx512pf = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x04000000)); in cpuinfo_x86_detect_isa()
413 isa.avx512er = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x08000000)); in cpuinfo_x86_detect_isa()
419 isa.avx512cd = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x10000000)); in cpuinfo_x86_detect_isa()
425 isa.avx512dq = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x00020000)); in cpuinfo_x86_detect_isa()
431 isa.avx512bw = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x40000000)); in cpuinfo_x86_detect_isa()
437 isa.avx512vl = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x80000000)); in cpuinfo_x86_detect_isa()
443 isa.avx512ifma = avx512_regs && !!(structured_feature_info0.ebx & UINT32_C(0x00200000)); in cpuinfo_x86_detect_isa()
449 isa.avx512vbmi = avx512_regs && !!(structured_feature_info0.ecx & UINT32_C(0x00000002)); in cpuinfo_x86_detect_isa()
455 isa.avx512vbmi2 = avx512_regs && !!(structured_feature_info0.ecx & UINT32_C(0x00000040)); in cpuinfo_x86_detect_isa()
461 isa.avx512bitalg = avx512_regs && !!(structured_feature_info0.ecx & UINT32_C(0x00001000)); in cpuinfo_x86_detect_isa()
467 isa.avx512vpopcntdq = avx512_regs && !!(structured_feature_info0.ecx & UINT32_C(0x00004000)); in cpuinfo_x86_detect_isa()
473 isa.avx512vnni = avx512_regs && !!(structured_feature_info0.ecx & UINT32_C(0x00000800)); in cpuinfo_x86_detect_isa()
479 isa.avx512_4vnniw = avx512_regs && !!(structured_feature_info0.edx & UINT32_C(0x00000004)); in cpuinfo_x86_detect_isa()
485 isa.avx512_4fmaps = avx512_regs && !!(structured_feature_info0.edx & UINT32_C(0x00000008)); in cpuinfo_x86_detect_isa()
491 isa.avx512vp2intersect = avx512_regs && !!(structured_feature_info0.edx & UINT32_C(0x00000100)); in cpuinfo_x86_detect_isa()
497 isa.avx512bf16 = avx512_regs && !!(structured_feature_info1.eax & UINT32_C(0x00000020)); in cpuinfo_x86_detect_isa()
503 isa.hle = !!(structured_feature_info0.ebx & UINT32_C(0x00000010)); in cpuinfo_x86_detect_isa()
509 isa.rtm = !!(structured_feature_info0.ebx & UINT32_C(0x00000800)); in cpuinfo_x86_detect_isa()
515 isa.xtest = isa.hle || isa.rtm; in cpuinfo_x86_detect_isa()
521 isa.mpx = mpx_regs && !!(structured_feature_info0.ebx & UINT32_C(0x00004000)); in cpuinfo_x86_detect_isa()
529 isa.cmov = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00008000)); in cpuinfo_x86_detect_isa()
536 isa.cmpxchg8b = !!((basic_info.edx | extended_info.edx) & UINT32_C(0x00000100)); in cpuinfo_x86_detect_isa()
543 isa.cmpxchg16b = !!(basic_info.ecx & UINT32_C(0x00002000)); in cpuinfo_x86_detect_isa()
549 isa.clwb = !!(structured_feature_info0.ebx & UINT32_C(0x01000000)); in cpuinfo_x86_detect_isa()
555 isa.movbe = !!(basic_info.ecx & UINT32_C(0x00400000)); in cpuinfo_x86_detect_isa()
563 isa.lahf_sahf = !!(extended_info.ecx & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
570 isa.fs_gs_base = !!(structured_feature_info0.ebx & UINT32_C(0x00000001)); in cpuinfo_x86_detect_isa()
576 isa.lzcnt = !!(extended_info.ecx & UINT32_C(0x00000020)); in cpuinfo_x86_detect_isa()
582 isa.popcnt = !!(basic_info.ecx & UINT32_C(0x00800000)); in cpuinfo_x86_detect_isa()
588 isa.tbm = !!(extended_info.ecx & UINT32_C(0x00200000)); in cpuinfo_x86_detect_isa()
594 isa.bmi = !!(structured_feature_info0.ebx & UINT32_C(0x00000008)); in cpuinfo_x86_detect_isa()
600 isa.bmi2 = !!(structured_feature_info0.ebx & UINT32_C(0x00000100)); in cpuinfo_x86_detect_isa()
606 isa.adx = !!(structured_feature_info0.ebx & UINT32_C(0x00080000)); in cpuinfo_x86_detect_isa()
612 isa.aes = !!(basic_info.ecx & UINT32_C(0x02000000)); in cpuinfo_x86_detect_isa()
618 isa.vaes = !!(structured_feature_info0.ecx & UINT32_C(0x00000200)); in cpuinfo_x86_detect_isa()
624 isa.pclmulqdq = !!(basic_info.ecx & UINT32_C(0x00000002)); in cpuinfo_x86_detect_isa()
630 isa.vpclmulqdq = !!(structured_feature_info0.ecx & UINT32_C(0x00000400)); in cpuinfo_x86_detect_isa()
636 isa.gfni = !!(structured_feature_info0.ecx & UINT32_C(0x00000100)); in cpuinfo_x86_detect_isa()
642 isa.rdrand = !!(basic_info.ecx & UINT32_C(0x40000000)); in cpuinfo_x86_detect_isa()
648 isa.rdseed = !!(structured_feature_info0.ebx & UINT32_C(0x00040000)); in cpuinfo_x86_detect_isa()
654 isa.sha = !!(structured_feature_info0.ebx & UINT32_C(0x20000000)); in cpuinfo_x86_detect_isa()
669 isa.rng = (padlock_info.edx & padlock_rng_mask) == padlock_rng_mask; in cpuinfo_x86_detect_isa()
677 isa.ace = (padlock_info.edx & padlock_ace_mask) == padlock_ace_mask; in cpuinfo_x86_detect_isa()
685 isa.ace2 = (padlock_info.edx & padlock_ace2_mask) == padlock_ace2_mask; in cpuinfo_x86_detect_isa()
693 isa.phe = (padlock_info.edx & padlock_phe_mask) == padlock_phe_mask; in cpuinfo_x86_detect_isa()
701 isa.pmm = (padlock_info.edx & padlock_pmm_mask) == padlock_pmm_mask; in cpuinfo_x86_detect_isa()
709 isa.lwp = !!(extended_info.ecx & UINT32_C(0x00008000)); in cpuinfo_x86_detect_isa()
715 isa.rdtscp = !!(extended_info.edx & UINT32_C(0x08000000)); in cpuinfo_x86_detect_isa()
721 isa.rdpid = !!(structured_feature_info0.ecx & UINT32_C(0x00400000)); in cpuinfo_x86_detect_isa()
723 return isa; in cpuinfo_x86_detect_isa()