1 /* 2 * This file and its contents are supplied under the terms of the 3 * Common Development and Distribution License ("CDDL"), version 1.0. 4 * You may only use this file in accordance with the terms of version 5 * 1.0 of the CDDL. 6 * 7 * A full copy of the text of the CDDL should have accompanied this 8 * source. A copy of the CDDL is also available via the Internet at 9 * http://www.illumos.org/license/CDDL. 10 */ 11 12 /* 13 * Copyright 2019 Joyent, Inc. 14 */ 15 16 #ifndef _COMPAT_FREEBSD_AMD64_MACHINE_SPECIALREG_H_ 17 #define _COMPAT_FREEBSD_AMD64_MACHINE_SPECIALREG_H_ 18 19 #ifdef _SYS_X86_ARCHEXT_H 20 /* Our x86_archext conflicts with BSD header for the XFEATURE_ defines */ 21 #undef XFEATURE_AVX 22 #undef XFEATURE_MPX 23 #undef XFEATURE_AVX512 24 #endif 25 26 #ifdef _SYS_CONTROLREGS_H 27 /* Our CR4 defines conflict with BSD header */ 28 #undef CR4_VME 29 #undef CR4_PVI 30 #undef CR4_TSD 31 #undef CR4_DE 32 #undef CR4_PSE 33 #undef CR4_PAE 34 #undef CR4_MCE 35 #undef CR4_PGE 36 #undef CR4_PCE 37 #undef CR4_VMXE 38 #undef CR4_SMEP 39 #undef CR4_SMAP 40 #undef CR4_PKE 41 #undef CR4_FSGSBASE 42 #undef CR4_PCIDE 43 #undef CR4_UMIP 44 #undef CR4_LA57 45 #endif /* _SYS_CONTROLREGS_H */ 46 47 #ifdef _SYS_X86_ARCHEXT_H 48 /* Our IA32 speculation-related defines conflict with BSD header */ 49 #undef IA32_ARCH_CAP_RDCL_NO 50 #undef IA32_ARCH_CAP_IBRS_ALL 51 #undef IA32_ARCH_CAP_RSBA 52 #undef IA32_ARCH_CAP_SKIP_L1DFL_VMENTRY 53 #undef IA32_ARCH_CAP_SSB_NO 54 #undef IA32_ARCH_CAP_MDS_NO 55 #undef IA32_ARCH_CAP_IF_PSCHANGE_MC_NO 56 #undef IA32_ARCH_CAP_TSX_CTRL 57 #undef IA32_ARCH_CAP_TAA_NO 58 #undef IA32_FLUSH_CMD_L1D 59 #undef IA32_SPEC_CTRL_IBRS 60 #undef IA32_SPEC_CTRL_STIBP 61 #undef IA32_SPEC_CTRL_SSBD 62 #undef IA32_TSX_CTRL_RTM_DISABLE 63 #undef IA32_TSX_CTRL_TSX_CPUID_CLEAR 64 #undef MSR_IA32_SPEC_CTRL 65 #undef MSR_IA32_PRED_CMD 66 #endif /* _SYS_X86_ARCHEXT_H */ 67 68 #include <x86/specialreg.h> 69 #endif /* _COMPAT_FREEBSD_AMD64_MACHINE_SPECIALREG_H_ */ 70