NEURON
fujitsufeatures.h
Go to the documentation of this file.
1 /*
2 Note: Minimum/Initial version derived from openclfeatures.h to work
3 with cray compiler.
4 */
5 
6 #ifndef __crayfeatures_dot_hpp
7 #define __crayfeatures_dot_hpp
8 
9 #ifndef R123_STATIC_INLINE
10 #define R123_STATIC_INLINE static __inline
11 #endif
12 
13 #ifndef R123_FORCE_INLINE
14 #define R123_FORCE_INLINE(decl) decl
15 #endif
16 
17 #ifndef R123_CUDA_DEVICE
18 #define R123_CUDA_DEVICE
19 #endif
20 
21 #ifndef R123_ASSERT
22 #include <assert.h>
23 #define R123_ASSERT(x) assert(x)
24 #endif
25 
26 #ifndef R123_BUILTIN_EXPECT
27 #define R123_BUILTIN_EXPECT(expr,likely) expr
28 #endif
29 
30 #ifndef R123_USE_WMMINTRIN_H
31 #define R123_USE_WMMINTRIN_H 0
32 #endif
33 
34 #ifndef R123_USE_INTRIN_H
35 #define R123_USE_INTRIN_H 0
36 #endif
37 
38 #ifndef R123_USE_MULHILO32_ASM
39 #define R123_USE_MULHILO32_ASM 0
40 #endif
41 
42 #ifndef R123_USE_MULHILO64_ASM
43 #define R123_USE_MULHILO64_ASM 0
44 #endif
45 
46 #ifndef R123_USE_MULHILO64_MSVC_INTRIN
47 #define R123_USE_MULHILO64_MSVC_INTRIN 0
48 #endif
49 
50 #ifndef R123_USE_MULHILO64_CUDA_INTRIN
51 #define R123_USE_MULHILO64_CUDA_INTRIN 0
52 #endif
53 
54 #ifndef R123_USE_MULHILO64_OPENCL_INTRIN
55 #define R123_USE_MULHILO64_OPENCL_INTRIN 0
56 #endif
57 
58 #ifndef R123_USE_MULHILO64_MULHI_INTRIN
59 #if (defined(__powerpc64__))
60 #define R123_USE_MULHILO64_MULHI_INTRIN 1
61 #else
62 #define R123_USE_MULHILO64_MULHI_INTRIN 0
63 #endif
64 #endif
65 
66 #ifndef R123_MULHILO64_MULHI_INTRIN
67 #define R123_MULHILO64_MULHI_INTRIN __mulhdu
68 #endif
69 
70 #ifndef R123_USE_MULHILO32_MULHI_INTRIN
71 #define R123_USE_MULHILO32_MULHI_INTRIN 0
72 #endif
73 
74 #ifndef R123_MULHILO32_MULHI_INTRIN
75 #define R123_MULHILO32_MULHI_INTRIN __mulhwu
76 #endif
77 
78 #ifndef __STDC_CONSTANT_MACROS
79 #define __STDC_CONSTANT_MACROS
80 #endif
81 #include <stdint.h>
82 #ifndef UINT64_C
83 #error UINT64_C not defined. You must define __STDC_CONSTANT_MACROS before you #include <stdint.h>
84 #endif
85 
86 #endif