craig.topper updated this revision to Diff 148115. craig.topper added a comment.
Leave the message still saying x86intrin.h. Change the error checks to look for either x86intrin.h or immintrin.h to have been included. Really only the immintrin.h check is necessary since that's the header that does the include, but I put both so the error message saying x86intrin.h would be less confusing. https://reviews.llvm.org/D47182 Files: lib/Headers/cldemoteintrin.h lib/Headers/clzerointrin.h lib/Headers/immintrin.h lib/Headers/movdirintrin.h lib/Headers/pconfigintrin.h lib/Headers/ptwriteintrin.h lib/Headers/rdseedintrin.h lib/Headers/sgxintrin.h lib/Headers/waitpkgintrin.h lib/Headers/wbnoinvdintrin.h lib/Headers/x86intrin.h
Index: lib/Headers/x86intrin.h =================================================================== --- lib/Headers/x86intrin.h +++ lib/Headers/x86intrin.h @@ -32,26 +32,6 @@ #include <mm3dnow.h> #endif -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__BMI__) -#include <bmiintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__BMI2__) -#include <bmi2intrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__LZCNT__) -#include <lzcntintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__POPCNT__) -#include <popcntintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__RDSEED__) -#include <rdseedintrin.h> -#endif - #if !defined(_MSC_VER) || __has_feature(modules) || defined(__PRFCHW__) #include <prfchwintrin.h> #endif @@ -76,45 +56,8 @@ #include <lwpintrin.h> #endif -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__F16C__) -#include <f16cintrin.h> -#endif - #if !defined(_MSC_VER) || __has_feature(modules) || defined(__MWAITX__) #include <mwaitxintrin.h> #endif -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__CLZERO__) -#include <clzerointrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__WBNOINVD__) -#include <wbnoinvdintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__CLDEMOTE__) -#include <cldemoteintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__WAITPKG__) -#include <waitpkgintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || \ - defined(__MOVDIRI__) || defined(__MOVDIR64B__) -#include <movdirintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__PCONFIG__) -#include <pconfigintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__SGX__) -#include <sgxintrin.h> -#endif - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__PTWRITE__) -#include <ptwriteintrin.h> -#endif - #endif /* __X86INTRIN_H */ Index: lib/Headers/wbnoinvdintrin.h =================================================================== --- lib/Headers/wbnoinvdintrin.h +++ lib/Headers/wbnoinvdintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <wbnoinvdintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/waitpkgintrin.h =================================================================== --- lib/Headers/waitpkgintrin.h +++ lib/Headers/waitpkgintrin.h @@ -20,7 +20,7 @@ * *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <waitpkgintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/sgxintrin.h =================================================================== --- lib/Headers/sgxintrin.h +++ lib/Headers/sgxintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <sgxintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/rdseedintrin.h =================================================================== --- lib/Headers/rdseedintrin.h +++ lib/Headers/rdseedintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <rdseedintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/ptwriteintrin.h =================================================================== --- lib/Headers/ptwriteintrin.h +++ lib/Headers/ptwriteintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <ptwriteintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/pconfigintrin.h =================================================================== --- lib/Headers/pconfigintrin.h +++ lib/Headers/pconfigintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <pconfigintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/movdirintrin.h =================================================================== --- lib/Headers/movdirintrin.h +++ lib/Headers/movdirintrin.h @@ -20,7 +20,7 @@ * *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <movdirintrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/immintrin.h =================================================================== --- lib/Headers/immintrin.h +++ lib/Headers/immintrin.h @@ -339,4 +339,41 @@ * whereas others are also available at all times. */ #include <adxintrin.h> +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__RDSEED__) +#include <rdseedintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__CLZERO__) +#include <clzerointrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__WBNOINVD__) +#include <wbnoinvdintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__CLDEMOTE__) +#include <cldemoteintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__WAITPKG__) +#include <waitpkgintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || \ + defined(__MOVDIRI__) || defined(__MOVDIR64B__) +#include <movdirintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__PCONFIG__) +#include <pconfigintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__SGX__) +#include <sgxintrin.h> +#endif + +#if !defined(_MSC_VER) || __has_feature(modules) || defined(__PTWRITE__) +#include <ptwriteintrin.h> +#endif + #endif /* __IMMINTRIN_H */ Index: lib/Headers/clzerointrin.h =================================================================== --- lib/Headers/clzerointrin.h +++ lib/Headers/clzerointrin.h @@ -20,7 +20,7 @@ * *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <clzerointrin.h> directly; include <x86intrin.h> instead." #endif Index: lib/Headers/cldemoteintrin.h =================================================================== --- lib/Headers/cldemoteintrin.h +++ lib/Headers/cldemoteintrin.h @@ -21,7 +21,7 @@ *===-----------------------------------------------------------------------=== */ -#ifndef __X86INTRIN_H +#if !defined __X86INTRIN_H && !defined __IMMINTRIN_H #error "Never use <cldemoteintrin.h> directly; include <x86intrin.h> instead." #endif
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits