Neumann-A created this revision. Herald added a project: All. Neumann-A requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits.
Even though there is a significant compile time overhead for all users being a true drop in replacement for cl requires including the intrinsic headers without a guard. Github issues (there are probably more related): https://github.com/llvm/llvm-project/issues/53520 https://github.com/llvm/llvm-project/issues/63492 Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D155642 Files: clang/lib/Headers/bmiintrin.h clang/lib/Headers/immintrin.h clang/lib/Headers/keylockerintrin.h clang/lib/Headers/x86gprintrin.h clang/lib/Headers/x86intrin.h
Index: clang/lib/Headers/x86intrin.h =================================================================== --- clang/lib/Headers/x86intrin.h +++ clang/lib/Headers/x86intrin.h @@ -14,52 +14,52 @@ #include <immintrin.h> -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__3dNOW__) #include <mm3dnow.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__PRFCHW__) #include <prfchwintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SSE4A__) #include <ammintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__FMA4__) #include <fma4intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__XOP__) #include <xopintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__TBM__) #include <tbmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__LWP__) #include <lwpintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__MWAITX__) #include <mwaitxintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CLZERO__) #include <clzerointrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RDPRU__) #include <rdpruintrin.h> #endif Index: clang/lib/Headers/x86gprintrin.h =================================================================== --- clang/lib/Headers/x86gprintrin.h +++ clang/lib/Headers/x86gprintrin.h @@ -10,32 +10,32 @@ #ifndef __X86GPRINTRIN_H #define __X86GPRINTRIN_H -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__HRESET__) #include <hresetintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__UINTR__) #include <uintrintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CRC32__) #include <crc32intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__PRFCHI__) #include <prfchiintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RAOINT__) #include <raointintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CMPCCXADD__) #include <cmpccxaddintrin.h> #endif Index: clang/lib/Headers/keylockerintrin.h =================================================================== --- clang/lib/Headers/keylockerintrin.h +++ clang/lib/Headers/keylockerintrin.h @@ -28,7 +28,7 @@ #ifndef _KEYLOCKERINTRIN_H #define _KEYLOCKERINTRIN_H -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__KL__) /* Define the default attributes for the functions in this file. */ @@ -327,10 +327,10 @@ #undef __DEFAULT_FN_ATTRS -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ +#endif /* defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) \ || defined(__KL__) */ -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__WIDEKL__) /* Define the default attributes for the functions in this file. */ @@ -524,7 +524,7 @@ #undef __DEFAULT_FN_ATTRS -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ +#endif /* defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) \ || defined(__WIDEKL__) */ #endif /* _KEYLOCKERINTRIN_H */ Index: clang/lib/Headers/immintrin.h =================================================================== --- clang/lib/Headers/immintrin.h +++ clang/lib/Headers/immintrin.h @@ -16,62 +16,62 @@ #include <x86gprintrin.h> -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__MMX__) #include <mmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SSE__) #include <xmmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SSE2__) #include <emmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SSE3__) #include <pmmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SSSE3__) #include <tmmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__SSE4_2__) || defined(__SSE4_1__)) #include <smmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AES__) || defined(__PCLMUL__)) #include <wmmintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CLFLUSHOPT__) #include <clflushoptintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CLWB__) #include <clwbintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX__) #include <avxintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX2__) #include <avx2intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__F16C__) #include <f16cintrin.h> #endif @@ -79,197 +79,197 @@ /* No feature check desired due to internal checks */ #include <bmiintrin.h> -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__BMI2__) #include <bmi2intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__LZCNT__) #include <lzcntintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__POPCNT__) #include <popcntintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__FMA__) #include <fmaintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512F__) #include <avx512fintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VL__) #include <avx512vlintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512BW__) #include <avx512bwintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512BITALG__) #include <avx512bitalgintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512CD__) #include <avx512cdintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VPOPCNTDQ__) #include <avx512vpopcntdqintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512VPOPCNTDQ__)) #include <avx512vpopcntdqvlintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VNNI__) #include <avx512vnniintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512VNNI__)) #include <avx512vlvnniintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVXVNNI__) #include <avxvnniintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512DQ__) #include <avx512dqintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512BITALG__)) #include <avx512vlbitalgintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512BW__)) #include <avx512vlbwintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512CD__)) #include <avx512vlcdintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512DQ__)) #include <avx512vldqintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512ER__) #include <avx512erintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512IFMA__) #include <avx512ifmaintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512IFMA__) && defined(__AVX512VL__)) #include <avx512ifmavlintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVXIFMA__) #include <avxifmaintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VBMI__) #include <avx512vbmiintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VBMI__) && defined(__AVX512VL__)) #include <avx512vbmivlintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VBMI2__) #include <avx512vbmi2intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VBMI2__) && defined(__AVX512VL__)) #include <avx512vlvbmi2intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512PF__) #include <avx512pfintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512FP16__) #include <avx512fp16intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512FP16__)) #include <avx512vlfp16intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512BF16__) #include <avx512bf16intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512BF16__)) #include <avx512vlbf16intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__PKU__) #include <pkuintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__VPCLMULQDQ__) #include <vpclmulqdqintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__VAES__) #include <vaesintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__GFNI__) #include <gfniintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVXVNNIINT8__) #include <avxvnniint8intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVXNECONVERT__) #include <avxneconvertintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RDPID__) /// Returns the value of the IA32_TSC_AUX MSR (0xc0000103). /// @@ -282,7 +282,7 @@ } #endif // __RDPID__ -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RDRND__) /// Returns a 16-bit hardware-generated random value. /// @@ -345,7 +345,7 @@ } #endif /* __RDRND__ */ -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__FSGSBASE__) #ifdef __x86_64__ /// Reads the FS base register. @@ -459,7 +459,7 @@ #endif #endif /* __FSGSBASE__ */ -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__MOVBE__) /* The structs used below are to force the load/store to be unaligned. This @@ -519,18 +519,18 @@ #endif #endif /* __MOVBE */ -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RTM__) #include <rtmintrin.h> #include <xtestintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SHA__) #include <shaintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__FXSR__) #include <fxsrintrin.h> #endif @@ -538,22 +538,22 @@ /* No feature check desired due to internal MSC_VER checks */ #include <xsaveintrin.h> -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__XSAVEOPT__) #include <xsaveoptintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__XSAVEC__) #include <xsavecintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__XSAVES__) #include <xsavesintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SHSTK__) #include <cetintrin.h> #endif @@ -562,91 +562,91 @@ * whereas others are also available at all times. */ #include <adxintrin.h> -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__RDSEED__) #include <rdseedintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__WBNOINVD__) #include <wbnoinvdintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__CLDEMOTE__) #include <cldemoteintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__WAITPKG__) #include <waitpkgintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__MOVDIRI__) || defined(__MOVDIR64B__) #include <movdirintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__PCONFIG__) #include <pconfigintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SGX__) #include <sgxintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__PTWRITE__) #include <ptwriteintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__INVPCID__) #include <invpcidintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AMX_FP16__) #include <amxfp16intrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__KL__) || defined(__WIDEKL__) #include <keylockerintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AMX_TILE__) || defined(__AMX_INT8__) || defined(__AMX_BF16__) #include <amxintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AMX_COMPLEX__) #include <amxcomplexintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__AVX512VP2INTERSECT__) #include <avx512vp2intersectintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ (defined(__AVX512VL__) && defined(__AVX512VP2INTERSECT__)) #include <avx512vlvp2intersectintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__ENQCMD__) #include <enqcmdintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__SERIALIZE__) #include <serializeintrin.h> #endif -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__TSXLDTRK__) #include <tsxldtrkintrin.h> #endif Index: clang/lib/Headers/bmiintrin.h =================================================================== --- clang/lib/Headers/bmiintrin.h +++ clang/lib/Headers/bmiintrin.h @@ -115,7 +115,7 @@ #undef __RELAXED_FN_ATTRS -#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ +#if defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) || \ defined(__BMI__) /* Define the default attributes for the functions in this file. */ @@ -425,7 +425,7 @@ #undef __DEFAULT_FN_ATTRS -#endif /* !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) \ +#endif /* defined(_MSC_VER) || !defined(__SCE__) || __has_feature(modules) \ || defined(__BMI__) */ #endif /* __BMIINTRIN_H */
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits