Loading...
Searching...
No Matches
Go to the documentation of this file.
46#ifndef __pgccfeatures_dot_hpp
47#define __pgccfeatures_dot_hpp
49#if !defined(__x86_64__) && !defined(__i386__) && !defined(__powerpc64__)
50#error "This code has only been tested on x86 platforms."
51#include <including_a_nonexistent_file_will_stop_some_compilers_from_continuing_with_a_hopeless_task>
59#ifndef R123_STATIC_INLINE
60#define R123_STATIC_INLINE static inline
64#ifndef R123_FORCE_INLINE
65#define R123_FORCE_INLINE(decl) decl __attribute__((__always_inline__))
68#ifndef R123_CUDA_DEVICE
69#define R123_CUDA_DEVICE
74#define R123_ASSERT(x) assert(x)
77#ifndef R123_BUILTIN_EXPECT
78#define R123_BUILTIN_EXPECT(expr, likely) (expr)
82#ifndef R123_USE_AES_NI
83#define R123_USE_AES_NI 0
88#ifndef R123_USE_SSE4_2
89#define R123_USE_SSE4_2 0
92#ifndef R123_USE_SSE4_1
93#define R123_USE_SSE4_1 0
100#define R123_USE_SSE 1
102#define R123_USE_SSE 0
106#ifndef R123_USE_AES_OPENSSL
112#define R123_USE_AES_OPENSSL 0
115#ifndef R123_USE_GNU_UINT128
116#define R123_USE_GNU_UINT128 0
119#ifndef R123_USE_ASM_GNU
120#define R123_USE_ASM_GNU 1
123#ifndef R123_USE_CPUID_MSVC
124#define R123_USE_CPUID_MSVC 0
127#ifndef R123_USE_X86INTRIN_H
128#define R123_USE_X86INTRIN_H 0
131#ifndef R123_USE_IA32INTRIN_H
132#define R123_USE_IA32INTRIN_H 0
137#ifndef R123_USE_XMMINTRIN_H
138#define R123_USE_XMMINTRIN_H 1
141#ifndef R123_USE_EMMINTRIN_H
142#define R123_USE_EMMINTRIN_H 1
145#ifndef R123_USE_SMMINTRIN_H
146#define R123_USE_SMMINTRIN_H 0
149#ifndef R123_USE_WMMINTRIN_H
150#define R123_USE_WMMINTRIN_H 0
153#ifndef R123_USE_INTRIN_H
155#define R123_USE_INTRIN_H 1
157#define R123_USE_INTRIN_H 0
161#ifndef R123_USE_MULHILO32_ASM
162#define R123_USE_MULHILO32_ASM 0
165#ifndef R123_USE_MULHILO64_MULHI_INTRIN
166#define R123_USE_MULHILO64_MULHI_INTRIN 0
169#ifndef R123_USE_MULHILO64_ASM
170#define R123_USE_MULHILO64_ASM 1
173#ifndef R123_USE_MULHILO64_MSVC_INTRIN
174#define R123_USE_MULHILO64_MSVC_INTRIN 0
177#ifndef R123_USE_MULHILO64_CUDA_INTRIN
178#define R123_USE_MULHILO64_CUDA_INTRIN 0
181#ifndef R123_USE_MULHILO64_OPENCL_INTRIN
182#define R123_USE_MULHILO64_OPENCL_INTRIN 0
185#ifndef __STDC_CONSTANT_MACROS
186#define __STDC_CONSTANT_MACROS
190#error UINT64_C not defined. You must define __STDC_CONSTANT_MACROS before you #include <stdint.h>