1 /*===---- x86intrin.h - X86 intrinsics -------------------------------------===
2  *
3  * Permission is hereby granted, free of charge, to any person obtaining a copy
4  * of this software and associated documentation files (the "Software"), to deal
5  * in the Software without restriction, including without limitation the rights
6  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7  * copies of the Software, and to permit persons to whom the Software is
8  * furnished to do so, subject to the following conditions:
9  *
10  * The above copyright notice and this permission notice shall be included in
11  * all copies or substantial portions of the Software.
12  *
13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19  * THE SOFTWARE.
20  *
21  *===-----------------------------------------------------------------------===
22  */
23 
24 #ifndef __X86INTRIN_H
25 #define __X86INTRIN_H
26 
27 #include <ia32intrin.h>
28 
29 #include <immintrin.h>
30 
31 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__3dNOW__)
32 #include <mm3dnow.h>
33 #endif
34 
35 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__BMI__)
36 #include <bmiintrin.h>
37 #endif
38 
39 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__BMI2__)
40 #include <bmi2intrin.h>
41 #endif
42 
43 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__LZCNT__)
44 #include <lzcntintrin.h>
45 #endif
46 
47 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__POPCNT__)
48 #include <popcntintrin.h>
49 #endif
50 
51 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__RDSEED__)
52 #include <rdseedintrin.h>
53 #endif
54 
55 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__PRFCHW__)
56 #include <prfchwintrin.h>
57 #endif
58 
59 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__SSE4A__)
60 #include <ammintrin.h>
61 #endif
62 
63 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__FMA4__)
64 #include <fma4intrin.h>
65 #endif
66 
67 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__XOP__)
68 #include <xopintrin.h>
69 #endif
70 
71 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__TBM__)
72 #include <tbmintrin.h>
73 #endif
74 
75 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__F16C__)
76 #include <f16cintrin.h>
77 #endif
78 
79 #if !defined(_MSC_VER) || __has_feature(modules) || defined(__MWAITX__)
80 #include <mwaitxintrin.h>
81 #endif
82 
83 /* FIXME: LWP */
84 
85 #endif /* __X86INTRIN_H */
86