blob: 6a1608b756a09c349fd238962417bd150f797724 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
// RUN: %clang_cc1 -fsyntax-only -ffreestanding %s -verify
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -fno-lax-vector-conversions %s -verify
// RUN: %clang_cc1 -fsyntax-only -ffreestanding -x c++ %s -verify
// expected-no-diagnostics
#if defined(i386) || defined(__x86_64__)
// Pretend to enable all features.
#ifndef __3dNOW__
#define __3dNOW__
#endif
#ifndef __BMI__
#define __BMI__
#endif
#ifndef __BMI2__
#define __BMI2__
#endif
#ifndef __LZCNT__
#define __LZCNT__
#endif
#ifndef __POPCNT__
#define __POPCNT__
#endif
#ifndef __RDSEED__
#define __RDSEED__
#endif
#ifndef __PRFCHW__
#define __PRFCHW__
#endif
#ifndef __SSE4A__
#define __SSE4A__
#endif
#ifndef __FMA4__
#define __FMA4__
#endif
#ifndef __XOP__
#define __XOP__
#endif
#ifndef __F16C__
#define __F16C__
#endif
#ifndef __MMX__
#define __MMX__
#endif
#ifndef __SSE__
#define __SSE__
#endif
#ifndef __SSE2__
#define __SSE2__
#endif
#ifndef __SSE3__
#define __SSE3__
#endif
#ifndef __SSSE3__
#define __SSSE3__
#endif
#ifndef __SSE4_1__
#define __SSE4_1__
#endif
#ifndef __SSE4_2__
#define __SSE4_2__
#endif
#ifndef __AES__
#define __AES__
#endif
#ifndef __AVX__
#define __AVX__
#endif
#ifndef __AVX2__
#define __AVX2__
#endif
#ifndef __BMI__
#define __BMI__
#endif
#ifndef __BMI2__
#define __BMI2__
#endif
#ifndef __LZCNT__
#define __LZCNT__
#endif
#ifndef __FMA__
#define __FMA__
#endif
#ifndef __RDRND__
#define __RDRND__
#endif
#ifndef __SHA__
#define __SHA__
#endif
#ifndef __ADX__
#define __ADX__
#endif
#ifndef __TBM__
#define __TBM__
#endif
#ifndef __RTM__
#define __RTM__
#endif
#ifndef __PCLMUL__
#define __PCLMUL__
#endif
#ifndef __FSGSBASE__
#define __FSGSBASE__
#endif
#ifndef __AVX512F__
#define __AVX512F__
#endif
#ifndef __AVX512VL__
#define __AVX512VL__
#endif
#ifndef __AVX512BW__
#define __AVX512BW__
#endif
#ifndef __AVX512ER__
#define __AVX512ER__
#endif
#ifndef __AVX512PF__
#define __AVX512PF__
#endif
#ifndef __AVX512DQ__
#define __AVX512DQ__
#endif
#ifndef __AVX512CD__
#define __AVX512CD__
#endif
// Now include the metaheader that includes all x86 intrinsic headers.
#include <x86intrin.h>
#endif
|