]> gitweb.factorcode.org Git - factor.git/blob - extra/cuda/types/types.factor
core, basis, extra: Remove DOS line endings from files.
[factor.git] / extra / cuda / types / types.factor
1 ! (c)2010 Joe Groff bsd license
2 USING: accessors alien.c-types classes.struct kernel math ;
3 FROM: alien.c-types => float ;
4 IN: cuda.types
5
6 STRUCT: char1
7     { x char } ;
8 STRUCT: char2
9     { x char }
10     { y char } ;
11 STRUCT: char3
12     { x char }
13     { y char }
14     { z char } ;
15 STRUCT: char4
16     { x char }
17     { y char }
18     { z char }
19     { w char } ;
20
21 STRUCT: uchar1
22     { x uchar } ;
23 STRUCT: uchar2
24     { x uchar }
25     { y uchar } ;
26 STRUCT: uchar3
27     { x uchar }
28     { y uchar }
29     { z uchar } ;
30 STRUCT: uchar4
31     { x uchar }
32     { y uchar }
33     { z uchar }
34     { w uchar } ;
35
36 STRUCT: short1
37     { x short } ;
38 STRUCT: short2
39     { x short }
40     { y short } ;
41 STRUCT: short3
42     { x short }
43     { y short }
44     { z short } ;
45 STRUCT: short4
46     { x short }
47     { y short }
48     { z short }
49     { w short } ;
50
51 STRUCT: ushort1
52     { x ushort } ;
53 STRUCT: ushort2
54     { x ushort }
55     { y ushort } ;
56 STRUCT: ushort3
57     { x ushort }
58     { y ushort }
59     { z ushort } ;
60 STRUCT: ushort4
61     { x ushort }
62     { y ushort }
63     { z ushort }
64     { w ushort } ;
65
66 STRUCT: int1
67     { x int } ;
68 STRUCT: int2
69     { x int }
70     { y int } ;
71 STRUCT: int3
72     { x int }
73     { y int }
74     { z int } ;
75 STRUCT: int4
76     { x int }
77     { y int }
78     { z int }
79     { w int } ;
80
81 STRUCT: uint1
82     { x uint } ;
83 STRUCT: uint2
84     { x uint }
85     { y uint } ;
86 STRUCT: uint3
87     { x uint }
88     { y uint }
89     { z uint } ;
90 STRUCT: uint4
91     { x uint }
92     { y uint }
93     { z uint }
94     { w uint } ;
95
96 STRUCT: long1
97     { x long } ;
98 STRUCT: long2
99     { x long }
100     { y long } ;
101 STRUCT: long3
102     { x long }
103     { y long }
104     { z long } ;
105 STRUCT: long4
106     { x long }
107     { y long }
108     { z long }
109     { w long } ;
110
111 STRUCT: ulong1
112     { x ulong } ;
113 STRUCT: ulong2
114     { x ulong }
115     { y ulong } ;
116 STRUCT: ulong3
117     { x ulong }
118     { y ulong }
119     { z ulong } ;
120 STRUCT: ulong4
121     { x ulong }
122     { y ulong }
123     { z ulong }
124     { w ulong } ;
125
126 STRUCT: longlong1
127     { x longlong } ;
128 STRUCT: longlong2
129     { x longlong }
130     { y longlong } ;
131 STRUCT: longlong3
132     { x longlong }
133     { y longlong }
134     { z longlong } ;
135 STRUCT: longlong4
136     { x longlong }
137     { y longlong }
138     { z longlong }
139     { w longlong } ;
140
141 STRUCT: ulonglong1
142     { x ulonglong } ;
143 STRUCT: ulonglong2
144     { x ulonglong }
145     { y ulonglong } ;
146 STRUCT: ulonglong3
147     { x ulonglong }
148     { y ulonglong }
149     { z ulonglong } ;
150 STRUCT: ulonglong4
151     { x ulonglong }
152     { y ulonglong }
153     { z ulonglong }
154     { w ulonglong } ;
155
156 STRUCT: float1
157     { x float } ;
158 STRUCT: float2
159     { x float }
160     { y float } ;
161 STRUCT: float3
162     { x float }
163     { y float }
164     { z float } ;
165 STRUCT: float4
166     { x float }
167     { y float }
168     { z float }
169     { w float } ;
170
171 STRUCT: double1
172     { x double } ;
173 STRUCT: double2
174     { x double }
175     { y double } ;
176 STRUCT: double3
177     { x double }
178     { y double }
179     { z double } ;
180 STRUCT: double4
181     { x double }
182     { y double }
183     { z double }
184     { w double } ;
185
186 char2 lookup-c-type
187     2 >>align
188     2 >>align-first
189     drop
190 char4 lookup-c-type
191     4 >>align
192     4 >>align-first
193     drop
194
195 uchar2 lookup-c-type
196     2 >>align
197     2 >>align-first
198     drop
199 uchar4 lookup-c-type
200     4 >>align
201     4 >>align-first
202     drop
203
204 short2 lookup-c-type
205     4 >>align
206     4 >>align-first
207     drop
208 short4 lookup-c-type
209     8 >>align
210     8 >>align-first
211     drop
212
213 ushort2 lookup-c-type
214     4 >>align
215     4 >>align-first
216     drop
217 ushort4 lookup-c-type
218     8 >>align
219     8 >>align-first
220     drop
221
222 int2 lookup-c-type
223     8 >>align
224     8 >>align-first
225     drop
226 int4 lookup-c-type
227     16 >>align
228     16 >>align-first
229     drop
230
231 uint2 lookup-c-type
232     8 >>align
233     8 >>align-first
234     drop
235 uint4 lookup-c-type
236     16 >>align
237     16 >>align-first
238     drop
239
240 long2 lookup-c-type
241     long heap-size 2 * >>align
242     long heap-size 2 * >>align-first
243     drop
244 long4 lookup-c-type
245     16 >>align
246     16 >>align-first
247     drop
248
249 ulong2 lookup-c-type
250     long heap-size 2 * >>align
251     long heap-size 2 * >>align-first
252     drop
253 ulong4 lookup-c-type
254     16 >>align
255     16 >>align-first
256     drop
257
258 longlong2 lookup-c-type
259     16 >>align
260     16 >>align-first
261     drop
262 longlong4 lookup-c-type
263     16 >>align
264     16 >>align-first
265     drop
266
267 ulonglong2 lookup-c-type
268     16 >>align
269     16 >>align-first
270     drop
271 ulonglong4 lookup-c-type
272     16 >>align
273     16 >>align-first
274     drop
275
276 float2 lookup-c-type
277     8 >>align
278     8 >>align-first
279     drop
280 float4 lookup-c-type
281     16 >>align
282     16 >>align-first
283     drop
284
285 double2 lookup-c-type
286     16 >>align
287     16 >>align-first
288     drop
289 double4 lookup-c-type
290     16 >>align
291     16 >>align-first
292     drop