/****************************************************************************
 ****************************************************************************
 ***
 ***   This header was automatically generated from a Linux kernel header
 ***   of the same name, to make information necessary for userspace to
 ***   call into the kernel available to libc.  It contains only constants,
 ***   structures, and macros generated from the original header, and thus,
 ***   contains no copyrightable information.
 ***
 ***   To edit the content of this header, modify the corresponding
 ***   source file (e.g. under external/kernel-headers/original/) then
 ***   run bionic/libc/kernel/tools/update_all.py
 ***
 ***   Any manual change here will be lost the next time this script will
 ***   be run. You've been warned!
 ***
 ****************************************************************************
 ****************************************************************************/
#ifndef __ASM_I386_CPUFEATURE_H
#define __ASM_I386_CPUFEATURE_H
#ifndef __ASSEMBLY__
#include <linux/bitops.h>
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#endif
#include <asm/required-features.h>
#define NCAPINTS 8
#define X86_FEATURE_FPU (0*32+ 0)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_VME (0*32+ 1)
#define X86_FEATURE_DE (0*32+ 2)
#define X86_FEATURE_PSE (0*32+ 3)
#define X86_FEATURE_TSC (0*32+ 4)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_MSR (0*32+ 5)
#define X86_FEATURE_PAE (0*32+ 6)
#define X86_FEATURE_MCE (0*32+ 7)
#define X86_FEATURE_CX8 (0*32+ 8)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_APIC (0*32+ 9)
#define X86_FEATURE_SEP (0*32+11)
#define X86_FEATURE_MTRR (0*32+12)
#define X86_FEATURE_PGE (0*32+13)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_MCA (0*32+14)
#define X86_FEATURE_CMOV (0*32+15)
#define X86_FEATURE_PAT (0*32+16)
#define X86_FEATURE_PSE36 (0*32+17)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_PN (0*32+18)
#define X86_FEATURE_CLFLSH (0*32+19)
#define X86_FEATURE_DS (0*32+21)
#define X86_FEATURE_ACPI (0*32+22)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_MMX (0*32+23)
#define X86_FEATURE_FXSR (0*32+24)
#define X86_FEATURE_XMM (0*32+25)
#define X86_FEATURE_XMM2 (0*32+26)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_SELFSNOOP (0*32+27)
#define X86_FEATURE_HT (0*32+28)
#define X86_FEATURE_ACC (0*32+29)
#define X86_FEATURE_IA64 (0*32+30)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_SYSCALL (1*32+11)
#define X86_FEATURE_MP (1*32+19)
#define X86_FEATURE_NX (1*32+20)
#define X86_FEATURE_MMXEXT (1*32+22)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_RDTSCP (1*32+27)
#define X86_FEATURE_LM (1*32+29)
#define X86_FEATURE_3DNOWEXT (1*32+30)
#define X86_FEATURE_3DNOW (1*32+31)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_RECOVERY (2*32+ 0)
#define X86_FEATURE_LONGRUN (2*32+ 1)
#define X86_FEATURE_LRTI (2*32+ 3)
#define X86_FEATURE_CXMMX (3*32+ 0)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_K6_MTRR (3*32+ 1)
#define X86_FEATURE_CYRIX_ARR (3*32+ 2)
#define X86_FEATURE_CENTAUR_MCR (3*32+ 3)
#define X86_FEATURE_K8 (3*32+ 4)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_K7 (3*32+ 5)
#define X86_FEATURE_P3 (3*32+ 6)
#define X86_FEATURE_P4 (3*32+ 7)
#define X86_FEATURE_CONSTANT_TSC (3*32+ 8)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_UP (3*32+ 9)
#define X86_FEATURE_FXSAVE_LEAK (3*32+10)
#define X86_FEATURE_ARCH_PERFMON (3*32+11)
#define X86_FEATURE_PEBS (3*32+12)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_BTS (3*32+13)
#define X86_FEATURE_SYNC_RDTSC (3*32+15)
#define X86_FEATURE_REP_GOOD (3*32+16)
#define X86_FEATURE_XMM3 (4*32+ 0)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_MWAIT (4*32+ 3)
#define X86_FEATURE_DSCPL (4*32+ 4)
#define X86_FEATURE_EST (4*32+ 7)
#define X86_FEATURE_TM2 (4*32+ 8)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_CID (4*32+10)
#define X86_FEATURE_CX16 (4*32+13)
#define X86_FEATURE_XTPR (4*32+14)
#define X86_FEATURE_DCA (4*32+18)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_XSTORE (5*32+ 2)
#define X86_FEATURE_XSTORE_EN (5*32+ 3)
#define X86_FEATURE_XCRYPT (5*32+ 6)
#define X86_FEATURE_XCRYPT_EN (5*32+ 7)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_ACE2 (5*32+ 8)
#define X86_FEATURE_ACE2_EN (5*32+ 9)
#define X86_FEATURE_PHE (5*32+ 10)
#define X86_FEATURE_PHE_EN (5*32+ 11)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_PMM (5*32+ 12)
#define X86_FEATURE_PMM_EN (5*32+ 13)
#define X86_FEATURE_LAHF_LM (6*32+ 0)
#define X86_FEATURE_CMP_LEGACY (6*32+ 1)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define X86_FEATURE_IDA (7*32+ 0)
#define cpu_has(c, bit)   (__builtin_constant_p(bit) &&   ( (((bit)>>5)==0 && (1UL<<((bit)&31) & REQUIRED_MASK0)) ||   (((bit)>>5)==1 && (1UL<<((bit)&31) & REQUIRED_MASK1)) ||   (((bit)>>5)==2 && (1UL<<((bit)&31) & REQUIRED_MASK2)) ||   (((bit)>>5)==3 && (1UL<<((bit)&31) & REQUIRED_MASK3)) ||   (((bit)>>5)==4 && (1UL<<((bit)&31) & REQUIRED_MASK4)) ||   (((bit)>>5)==5 && (1UL<<((bit)&31) & REQUIRED_MASK5)) ||   (((bit)>>5)==6 && (1UL<<((bit)&31) & REQUIRED_MASK6)) ||   (((bit)>>5)==7 && (1UL<<((bit)&31) & REQUIRED_MASK7)) )   ? 1 :   test_bit(bit, (c)->x86_capability))
#define boot_cpu_has(bit) cpu_has(&boot_cpu_data, bit)
#define cpu_has_fpu boot_cpu_has(X86_FEATURE_FPU)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_vme boot_cpu_has(X86_FEATURE_VME)
#define cpu_has_de boot_cpu_has(X86_FEATURE_DE)
#define cpu_has_pse boot_cpu_has(X86_FEATURE_PSE)
#define cpu_has_tsc boot_cpu_has(X86_FEATURE_TSC)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_pae boot_cpu_has(X86_FEATURE_PAE)
#define cpu_has_pge boot_cpu_has(X86_FEATURE_PGE)
#define cpu_has_apic boot_cpu_has(X86_FEATURE_APIC)
#define cpu_has_sep boot_cpu_has(X86_FEATURE_SEP)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_mtrr boot_cpu_has(X86_FEATURE_MTRR)
#define cpu_has_mmx boot_cpu_has(X86_FEATURE_MMX)
#define cpu_has_fxsr boot_cpu_has(X86_FEATURE_FXSR)
#define cpu_has_xmm boot_cpu_has(X86_FEATURE_XMM)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_xmm2 boot_cpu_has(X86_FEATURE_XMM2)
#define cpu_has_xmm3 boot_cpu_has(X86_FEATURE_XMM3)
#define cpu_has_ht boot_cpu_has(X86_FEATURE_HT)
#define cpu_has_mp boot_cpu_has(X86_FEATURE_MP)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_nx boot_cpu_has(X86_FEATURE_NX)
#define cpu_has_k6_mtrr boot_cpu_has(X86_FEATURE_K6_MTRR)
#define cpu_has_cyrix_arr boot_cpu_has(X86_FEATURE_CYRIX_ARR)
#define cpu_has_centaur_mcr boot_cpu_has(X86_FEATURE_CENTAUR_MCR)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_xstore boot_cpu_has(X86_FEATURE_XSTORE)
#define cpu_has_xstore_enabled boot_cpu_has(X86_FEATURE_XSTORE_EN)
#define cpu_has_xcrypt boot_cpu_has(X86_FEATURE_XCRYPT)
#define cpu_has_xcrypt_enabled boot_cpu_has(X86_FEATURE_XCRYPT_EN)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_ace2 boot_cpu_has(X86_FEATURE_ACE2)
#define cpu_has_ace2_enabled boot_cpu_has(X86_FEATURE_ACE2_EN)
#define cpu_has_phe boot_cpu_has(X86_FEATURE_PHE)
#define cpu_has_phe_enabled boot_cpu_has(X86_FEATURE_PHE_EN)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_pmm boot_cpu_has(X86_FEATURE_PMM)
#define cpu_has_pmm_enabled boot_cpu_has(X86_FEATURE_PMM_EN)
#define cpu_has_ds boot_cpu_has(X86_FEATURE_DS)
#define cpu_has_pebs boot_cpu_has(X86_FEATURE_PEBS)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define cpu_has_clflush boot_cpu_has(X86_FEATURE_CLFLSH)
#define cpu_has_bts boot_cpu_has(X86_FEATURE_BTS)
#endif
