47 #if defined (__SSE4_2__) || defined (__SSE4_1__)
51 #if defined (__AES__) || defined (__PCLMUL__)
99 #if defined (__AVX512VL__) && defined (__AVX512BW__)
103 #if defined (__AVX512VL__) && defined (__AVX512DQ__)
112 static __inline__
int __attribute__((__always_inline__, __nodebug__))
113 _rdrand16_step(
unsigned short *__p)
115 return __builtin_ia32_rdrand16_step(__p);
118 static __inline__
int __attribute__((__always_inline__, __nodebug__))
119 _rdrand32_step(
unsigned int *__p)
121 return __builtin_ia32_rdrand32_step(__p);
125 static __inline__
int __attribute__((__always_inline__, __nodebug__))
126 _rdrand64_step(
unsigned long long *__p)
128 return __builtin_ia32_rdrand64_step(__p);
135 static __inline__
unsigned int __attribute__((__always_inline__, __nodebug__))
136 _readfsbase_u32(
void)
138 return __builtin_ia32_rdfsbase32();
141 static __inline__
unsigned long long __attribute__((__always_inline__, __nodebug__))
142 _readfsbase_u64(
void)
144 return __builtin_ia32_rdfsbase64();
147 static __inline__
unsigned int __attribute__((__always_inline__, __nodebug__))
148 _readgsbase_u32(
void)
150 return __builtin_ia32_rdgsbase32();
153 static __inline__
unsigned long long __attribute__((__always_inline__, __nodebug__))
154 _readgsbase_u64(
void)
156 return __builtin_ia32_rdgsbase64();
159 static __inline__
void __attribute__((__always_inline__, __nodebug__))
160 _writefsbase_u32(
unsigned int __V)
162 return __builtin_ia32_wrfsbase32(__V);
165 static __inline__
void __attribute__((__always_inline__, __nodebug__))
166 _writefsbase_u64(
unsigned long long __V)
168 return __builtin_ia32_wrfsbase64(__V);
171 static __inline__
void __attribute__((__always_inline__, __nodebug__))
172 _writegsbase_u32(
unsigned int __V)
174 return __builtin_ia32_wrgsbase32(__V);
177 static __inline__
void __attribute__((__always_inline__, __nodebug__))
178 _writegsbase_u64(
unsigned long long __V)
180 return __builtin_ia32_wrgsbase64(__V);
char __v64qi __attribute__((__vector_size__(64)))