ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
vector_types.h
Go to the documentation of this file.
1#if !defined(__VECTOR_TYPES_H__)
2# define __VECTOR_TYPES_H__
3
4# include <stddef.h>
5# include <stdlib.h>
6
7# if !defined(__CUDA_LIBDEVICE__)
8# include "builtin_types.h"
9# endif /* !__CUDA_LIBDEVICE__ */
10# include "host_defines.h"
11
12# ifdef __cplusplus
13
14extern "C"
15{
16# endif
17
18# if !defined(__CUDACC__) && !defined(__CUDABE__) && defined(_WIN32) && \
19 !defined(_WIN64)
20
21# pragma warning(push)
22# pragma warning(disable : 4201 4408)
23
24# define __cuda_builtin_vector_align8(tag, members) \
25 struct __device_builtin__ tag \
26 { \
27 union \
28 { \
29 struct \
30 { \
31 members \
32 }; \
33 struct \
34 { \
35 long long int : 1, : 0; \
36 }; \
37 }; \
38 }
39
40# else /* !__CUDACC__ && !__CUDABE__ && _WIN32 && !_WIN64 */
41
42# define __cuda_builtin_vector_align8(tag, members) \
43 struct __device_builtin__ __align__(8) tag \
44 { \
45 members \
46 }
47
48# endif /* !__CUDACC__ && !__CUDABE__ && _WIN32 && !_WIN64 */
49
51 {
52 signed char x;
53 };
54
56 {
57 unsigned char x;
58 };
59
61 {
62 signed char x, y;
63 };
64
66 {
67 unsigned char x, y;
68 };
69
71 {
72 signed char x, y, z;
73 };
74
76 {
77 unsigned char x, y, z;
78 };
79
81 {
82 signed char x, y, z, w;
83 };
84
86 {
87 unsigned char x, y, z, w;
88 };
89
91 {
92 short x;
93 };
94
96 {
97 unsigned short x;
98 };
99
101 {
102 short x, y;
103 };
104
106 {
107 unsigned short x, y;
108 };
109
111 {
112 short x, y, z;
113 };
114
116 {
117 unsigned short x, y, z;
118 };
119
120 __cuda_builtin_vector_align8(short4, short x; short y; short z; short w;);
122 ushort4, unsigned short x; unsigned short y; unsigned short z;
123 unsigned short w;);
124
126 {
127 int x;
128 };
129
131 {
132 unsigned int x;
133 };
134
136 __cuda_builtin_vector_align8(uint2, unsigned int x; unsigned int y;);
137
139 {
140 int x, y, z;
141 };
142
144 {
145 unsigned int x, y, z;
146 };
147
149 {
150 int x, y, z, w;
151 };
152
153 struct __device_builtin__ __builtin_align__(16) _uint4
154 {
155 unsigned int x, y, z, w;
156 };
157
159 {
160 long int x;
161 };
162
164 {
165 unsigned long x;
166 };
167
168# if defined(_WIN32)
169 __cuda_builtin_vector_align8(long2, long int x; long int y;);
171 ulong2, unsigned long int x; unsigned long int y;);
172# else /* _WIN32 */
173
174struct __device_builtin__ __align__(2 * sizeof(long int)) long2
175{
176 long int x, y;
177};
178
179struct __device_builtin__ __align__(2 * sizeof(unsigned long int)) ulong2
180{
181 unsigned long int x, y;
182};
183
184# endif /* _WIN32 */
185
187 {
188 long int x, y, z;
189 };
190
192 {
193 unsigned long int x, y, z;
194 };
195
197 {
198 long int x, y, z, w;
199 };
200
202 {
203 unsigned long int x, y, z, w;
204 };
205
207 {
208 float x;
209 };
210
211# if !defined(__CUDACC__) && !defined(__CUDABE__) && defined(__arm__) && \
212 defined(__ARM_PCS_VFP) && __GNUC__ == 4 && __GNUC_MINOR__ == 6
213
214# pragma GCC diagnostic push
215# pragma GCC diagnostic ignored "-pedantic"
216
217 struct __device_builtin__ __attribute__((aligned(8))) float2
218 {
219 float x;
220 float y;
221 float __cuda_gnu_arm_ice_workaround[0];
222 };
223
224# pragma GCC poison __cuda_gnu_arm_ice_workaround
225# pragma GCC diagnostic pop
226
227# else /* !__CUDACC__ && !__CUDABE__ && __arm__ && __ARM_PCS_VFP && \
228 __GNUC__ == 4&& __GNUC_MINOR__ == 6 */
229
231
232# endif /* !__CUDACC__ && !__CUDABE__ && __arm__ && __ARM_PCS_VFP && \
233 __GNUC__ == 4&& __GNUC_MINOR__ == 6 */
234
236 {
237 float x, y, z;
238 };
239
241 {
242 float x, y, z, w;
243 };
244
246 {
247 long long int x;
248 };
249
251 {
252 unsigned long long int x;
253 };
254
256 {
257 long long int x, y;
258 };
259
261 {
262 unsigned long long int x, y;
263 };
264
266 {
267 long long int x, y, z;
268 };
269
271 {
272 unsigned long long int x, y, z;
273 };
274
276 {
277 long long int x, y, z, w;
278 };
279
281 {
282 unsigned long long int x, y, z, w;
283 };
284
286 {
287 double x;
288 };
289
291 {
292 double x, y;
293 };
294
296 {
297 double x, y, z;
298 };
299
301 {
302 double x, y, z, w;
303 };
304
305# if !defined(__CUDACC__) && !defined(__CUDABE__) && defined(_WIN32) && \
306 !defined(_WIN64)
307
308# pragma warning(pop)
309
310# endif /* !__CUDACC__ && !__CUDABE__ && _WIN32 && !_WIN64 */
311
335 typedef __device_builtin__ struct _uint4 uint4;
360
362 {
363 unsigned int x, y, z;
364# if defined(__cplusplus)
366 __dim3(unsigned int vx = 1, unsigned int vy = 1, unsigned int vz = 1)
367 {
368 x = vx;
369 y = vy;
370 z = vz;
371 }
373 {
374 x = v.x;
375 y = v.y;
376 z = v.z;
377 }
378 __host__ __device__ __dim3(const __dim3 &d)
379 {
380 x = d.x;
381 y = d.y;
382 z = d.z;
383 }
384 __host__ __device__ operator uint3(void)
385 {
386 uint3 t;
387 t.x = x;
388 t.y = y;
389 t.z = z;
390 return t;
391 }
392# endif /* __cplusplus */
393 };
394
396
397# undef __cuda_builtin_vector_align8
398
399# ifdef __cplusplus
400}
401
402# endif
403
404#endif /* !__VECTOR_TYPES_H__ */
#define __device_builtin__
Definition host_defines.h:120
#define __builtin_align__(a)
Definition host_defines.h:108
#define __host__
Definition host_defines.h:112
#define __device__
Definition host_defines.h:113
Definition int.py:1
struct mapping_t_fast __attribute__
Definition pthread_lib.c:86
Definition vector_types.h:362
unsigned int z
Definition vector_types.h:363
unsigned int y
Definition vector_types.h:363
unsigned int x
Definition vector_types.h:363
Definition vector_types.h:144
unsigned int x
Definition vector_types.h:145
unsigned int z
Definition vector_types.h:145
unsigned int y
Definition vector_types.h:145
Definition vector_types.h:51
signed char x
Definition vector_types.h:52
Definition vector_types.h:71
signed char x
Definition vector_types.h:72
signed char y
Definition vector_types.h:72
signed char z
Definition vector_types.h:72
Definition vector_types.h:286
double x
Definition vector_types.h:287
Definition vector_types.h:296
double z
Definition vector_types.h:297
double y
Definition vector_types.h:297
double x
Definition vector_types.h:297
Definition vector_types.h:207
float x
Definition vector_types.h:208
Definition vector_types.h:236
float z
Definition vector_types.h:237
float y
Definition vector_types.h:237
float x
Definition vector_types.h:237
Definition vector_types.h:126
int x
Definition vector_types.h:127
Definition vector_types.h:139
int x
Definition vector_types.h:140
int z
Definition vector_types.h:140
int y
Definition vector_types.h:140
Definition vector_types.h:159
long int x
Definition vector_types.h:160
Definition vector_types.h:187
long int z
Definition vector_types.h:188
long int y
Definition vector_types.h:188
long int x
Definition vector_types.h:188
Definition vector_types.h:246
long long int x
Definition vector_types.h:247
Definition vector_types.h:266
long long int y
Definition vector_types.h:267
long long int z
Definition vector_types.h:267
long long int x
Definition vector_types.h:267
Definition vector_types.h:91
short x
Definition vector_types.h:92
Definition vector_types.h:111
short x
Definition vector_types.h:112
short y
Definition vector_types.h:112
short z
Definition vector_types.h:112
Definition vector_types.h:56
unsigned char x
Definition vector_types.h:57
Definition vector_types.h:76
unsigned char z
Definition vector_types.h:77
unsigned char y
Definition vector_types.h:77
unsigned char x
Definition vector_types.h:77
Definition vector_types.h:131
unsigned int x
Definition vector_types.h:132
Definition vector_types.h:164
unsigned long x
Definition vector_types.h:165
Definition vector_types.h:192
unsigned long int z
Definition vector_types.h:193
unsigned long int x
Definition vector_types.h:193
unsigned long int y
Definition vector_types.h:193
Definition vector_types.h:251
unsigned long long int x
Definition vector_types.h:252
Definition vector_types.h:271
unsigned long long int y
Definition vector_types.h:272
unsigned long long int z
Definition vector_types.h:272
unsigned long long int x
Definition vector_types.h:272
Definition vector_types.h:96
unsigned short x
Definition vector_types.h:97
Definition vector_types.h:116
unsigned short z
Definition vector_types.h:117
unsigned short x
Definition vector_types.h:117
unsigned short y
Definition vector_types.h:117
__device_builtin__ struct longlong4 longlong4
Definition vector_types.h:354
__device_builtin__ struct _uint4 uint4
Definition vector_types.h:335
__device_builtin__ struct ulong4 ulong4
Definition vector_types.h:343
__device_builtin__ struct long4 long4
Definition vector_types.h:342
__device_builtin__ struct uchar2 uchar2
Definition vector_types.h:315
struct __device_builtin__ __align__(2) char2
Definition vector_types.h:60
__device_builtin__ struct ulonglong2 ulonglong2
Definition vector_types.h:351
__device_builtin__ struct short4 short4
Definition vector_types.h:326
__device_builtin__ struct double2 double2
Definition vector_types.h:357
__device_builtin__ struct char2 char2
Definition vector_types.h:314
__device_builtin__ struct short2 short2
Definition vector_types.h:322
__device_builtin__ struct float2 float2
Definition vector_types.h:345
__device_builtin__ struct uint2 uint2
Definition vector_types.h:331
__device_builtin__ struct ulong2 ulong2
Definition vector_types.h:339
__device_builtin__ struct ushort4 ushort4
Definition vector_types.h:327
__device_builtin__ struct int2 int2
Definition vector_types.h:330
#define __cuda_builtin_vector_align8(tag, members)
Definition vector_types.h:42
__device_builtin__ struct uchar4 uchar4
Definition vector_types.h:319
__device_builtin__ struct char4 char4
Definition vector_types.h:318
__device_builtin__ struct int4 int4
Definition vector_types.h:334
__device_builtin__ struct long2 long2
Definition vector_types.h:338
__device_builtin__ struct ulonglong4 ulonglong4
Definition vector_types.h:355
__device_builtin__ struct longlong2 longlong2
Definition vector_types.h:350
__device_builtin__ struct __uint3 uint3
Definition vector_types.h:333
__device_builtin__ struct ushort2 ushort2
Definition vector_types.h:323
__device_builtin__ struct __dim3 dim3
Definition vector_types.h:395
__device_builtin__ struct float4 float4
Definition vector_types.h:347
__device_builtin__ struct double4 double4
Definition vector_types.h:359