xref: /aosp_15_r20/external/deqp/data/gles2/shaders/conversions.test (revision 35238bce31c2a825756842865a792f8cf7f89930)
1*35238bceSAndroid Build Coastguard Worker# WARNING: This file is auto-generated. Do NOT modify it manually, but rather
2*35238bceSAndroid Build Coastguard Worker# modify the generating script file. Otherwise changes will be lost!
3*35238bceSAndroid Build Coastguard Worker
4*35238bceSAndroid Build Coastguard Workergroup scalar_to_scalar "Scalar to Scalar Conversions"
5*35238bceSAndroid Build Coastguard Worker
6*35238bceSAndroid Build Coastguard Worker    case float_to_float
7*35238bceSAndroid Build Coastguard Worker        values
8*35238bceSAndroid Build Coastguard Worker        {
9*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
10*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
11*35238bceSAndroid Build Coastguard Worker        }
12*35238bceSAndroid Build Coastguard Worker
13*35238bceSAndroid Build Coastguard Worker        both ""
14*35238bceSAndroid Build Coastguard Worker            precision mediump float;
15*35238bceSAndroid Build Coastguard Worker            precision mediump int;
16*35238bceSAndroid Build Coastguard Worker
17*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
18*35238bceSAndroid Build Coastguard Worker
19*35238bceSAndroid Build Coastguard Worker            void main()
20*35238bceSAndroid Build Coastguard Worker            {
21*35238bceSAndroid Build Coastguard Worker                ${SETUP}
22*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
23*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
24*35238bceSAndroid Build Coastguard Worker            }
25*35238bceSAndroid Build Coastguard Worker        ""
26*35238bceSAndroid Build Coastguard Worker    end
27*35238bceSAndroid Build Coastguard Worker
28*35238bceSAndroid Build Coastguard Worker    case float_to_int
29*35238bceSAndroid Build Coastguard Worker        values
30*35238bceSAndroid Build Coastguard Worker        {
31*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
32*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 2 | 3 | 0 | -8 | -20 | 36 ];
33*35238bceSAndroid Build Coastguard Worker        }
34*35238bceSAndroid Build Coastguard Worker
35*35238bceSAndroid Build Coastguard Worker        both ""
36*35238bceSAndroid Build Coastguard Worker            precision mediump float;
37*35238bceSAndroid Build Coastguard Worker            precision mediump int;
38*35238bceSAndroid Build Coastguard Worker
39*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
40*35238bceSAndroid Build Coastguard Worker
41*35238bceSAndroid Build Coastguard Worker            void main()
42*35238bceSAndroid Build Coastguard Worker            {
43*35238bceSAndroid Build Coastguard Worker                ${SETUP}
44*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
45*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
46*35238bceSAndroid Build Coastguard Worker            }
47*35238bceSAndroid Build Coastguard Worker        ""
48*35238bceSAndroid Build Coastguard Worker    end
49*35238bceSAndroid Build Coastguard Worker
50*35238bceSAndroid Build Coastguard Worker    case float_to_bool
51*35238bceSAndroid Build Coastguard Worker        values
52*35238bceSAndroid Build Coastguard Worker        {
53*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
54*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | true | true | true | true | true | true ];
55*35238bceSAndroid Build Coastguard Worker        }
56*35238bceSAndroid Build Coastguard Worker
57*35238bceSAndroid Build Coastguard Worker        both ""
58*35238bceSAndroid Build Coastguard Worker            precision mediump float;
59*35238bceSAndroid Build Coastguard Worker            precision mediump int;
60*35238bceSAndroid Build Coastguard Worker
61*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
62*35238bceSAndroid Build Coastguard Worker
63*35238bceSAndroid Build Coastguard Worker            void main()
64*35238bceSAndroid Build Coastguard Worker            {
65*35238bceSAndroid Build Coastguard Worker                ${SETUP}
66*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
67*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
68*35238bceSAndroid Build Coastguard Worker            }
69*35238bceSAndroid Build Coastguard Worker        ""
70*35238bceSAndroid Build Coastguard Worker    end
71*35238bceSAndroid Build Coastguard Worker
72*35238bceSAndroid Build Coastguard Worker    case int_to_float
73*35238bceSAndroid Build Coastguard Worker        values
74*35238bceSAndroid Build Coastguard Worker        {
75*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
76*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | 2.0 | 5.0 | 8.0 | 11.0 | -12.0 | -66.0 | -192.0 | 255.0 ];
77*35238bceSAndroid Build Coastguard Worker        }
78*35238bceSAndroid Build Coastguard Worker
79*35238bceSAndroid Build Coastguard Worker        both ""
80*35238bceSAndroid Build Coastguard Worker            precision mediump float;
81*35238bceSAndroid Build Coastguard Worker            precision mediump int;
82*35238bceSAndroid Build Coastguard Worker
83*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
84*35238bceSAndroid Build Coastguard Worker
85*35238bceSAndroid Build Coastguard Worker            void main()
86*35238bceSAndroid Build Coastguard Worker            {
87*35238bceSAndroid Build Coastguard Worker                ${SETUP}
88*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
89*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
90*35238bceSAndroid Build Coastguard Worker            }
91*35238bceSAndroid Build Coastguard Worker        ""
92*35238bceSAndroid Build Coastguard Worker    end
93*35238bceSAndroid Build Coastguard Worker
94*35238bceSAndroid Build Coastguard Worker    case int_to_int
95*35238bceSAndroid Build Coastguard Worker        values
96*35238bceSAndroid Build Coastguard Worker        {
97*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
98*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
99*35238bceSAndroid Build Coastguard Worker        }
100*35238bceSAndroid Build Coastguard Worker
101*35238bceSAndroid Build Coastguard Worker        both ""
102*35238bceSAndroid Build Coastguard Worker            precision mediump float;
103*35238bceSAndroid Build Coastguard Worker            precision mediump int;
104*35238bceSAndroid Build Coastguard Worker
105*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
106*35238bceSAndroid Build Coastguard Worker
107*35238bceSAndroid Build Coastguard Worker            void main()
108*35238bceSAndroid Build Coastguard Worker            {
109*35238bceSAndroid Build Coastguard Worker                ${SETUP}
110*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
111*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
112*35238bceSAndroid Build Coastguard Worker            }
113*35238bceSAndroid Build Coastguard Worker        ""
114*35238bceSAndroid Build Coastguard Worker    end
115*35238bceSAndroid Build Coastguard Worker
116*35238bceSAndroid Build Coastguard Worker    case int_to_bool
117*35238bceSAndroid Build Coastguard Worker        values
118*35238bceSAndroid Build Coastguard Worker        {
119*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
120*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | true | true | true | true | true | true | true | true ];
121*35238bceSAndroid Build Coastguard Worker        }
122*35238bceSAndroid Build Coastguard Worker
123*35238bceSAndroid Build Coastguard Worker        both ""
124*35238bceSAndroid Build Coastguard Worker            precision mediump float;
125*35238bceSAndroid Build Coastguard Worker            precision mediump int;
126*35238bceSAndroid Build Coastguard Worker
127*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
128*35238bceSAndroid Build Coastguard Worker
129*35238bceSAndroid Build Coastguard Worker            void main()
130*35238bceSAndroid Build Coastguard Worker            {
131*35238bceSAndroid Build Coastguard Worker                ${SETUP}
132*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
133*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
134*35238bceSAndroid Build Coastguard Worker            }
135*35238bceSAndroid Build Coastguard Worker        ""
136*35238bceSAndroid Build Coastguard Worker    end
137*35238bceSAndroid Build Coastguard Worker
138*35238bceSAndroid Build Coastguard Worker    case bool_to_float
139*35238bceSAndroid Build Coastguard Worker        values
140*35238bceSAndroid Build Coastguard Worker        {
141*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
142*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 1.0 | 0.0 ];
143*35238bceSAndroid Build Coastguard Worker        }
144*35238bceSAndroid Build Coastguard Worker
145*35238bceSAndroid Build Coastguard Worker        both ""
146*35238bceSAndroid Build Coastguard Worker            precision mediump float;
147*35238bceSAndroid Build Coastguard Worker            precision mediump int;
148*35238bceSAndroid Build Coastguard Worker
149*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
150*35238bceSAndroid Build Coastguard Worker
151*35238bceSAndroid Build Coastguard Worker            void main()
152*35238bceSAndroid Build Coastguard Worker            {
153*35238bceSAndroid Build Coastguard Worker                ${SETUP}
154*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
155*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
156*35238bceSAndroid Build Coastguard Worker            }
157*35238bceSAndroid Build Coastguard Worker        ""
158*35238bceSAndroid Build Coastguard Worker    end
159*35238bceSAndroid Build Coastguard Worker
160*35238bceSAndroid Build Coastguard Worker    case bool_to_int
161*35238bceSAndroid Build Coastguard Worker        values
162*35238bceSAndroid Build Coastguard Worker        {
163*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
164*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 1 | 0 ];
165*35238bceSAndroid Build Coastguard Worker        }
166*35238bceSAndroid Build Coastguard Worker
167*35238bceSAndroid Build Coastguard Worker        both ""
168*35238bceSAndroid Build Coastguard Worker            precision mediump float;
169*35238bceSAndroid Build Coastguard Worker            precision mediump int;
170*35238bceSAndroid Build Coastguard Worker
171*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
172*35238bceSAndroid Build Coastguard Worker
173*35238bceSAndroid Build Coastguard Worker            void main()
174*35238bceSAndroid Build Coastguard Worker            {
175*35238bceSAndroid Build Coastguard Worker                ${SETUP}
176*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
177*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
178*35238bceSAndroid Build Coastguard Worker            }
179*35238bceSAndroid Build Coastguard Worker        ""
180*35238bceSAndroid Build Coastguard Worker    end
181*35238bceSAndroid Build Coastguard Worker
182*35238bceSAndroid Build Coastguard Worker    case bool_to_bool
183*35238bceSAndroid Build Coastguard Worker        values
184*35238bceSAndroid Build Coastguard Worker        {
185*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
186*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ true | false ];
187*35238bceSAndroid Build Coastguard Worker        }
188*35238bceSAndroid Build Coastguard Worker
189*35238bceSAndroid Build Coastguard Worker        both ""
190*35238bceSAndroid Build Coastguard Worker            precision mediump float;
191*35238bceSAndroid Build Coastguard Worker            precision mediump int;
192*35238bceSAndroid Build Coastguard Worker
193*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
194*35238bceSAndroid Build Coastguard Worker
195*35238bceSAndroid Build Coastguard Worker            void main()
196*35238bceSAndroid Build Coastguard Worker            {
197*35238bceSAndroid Build Coastguard Worker                ${SETUP}
198*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
199*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
200*35238bceSAndroid Build Coastguard Worker            }
201*35238bceSAndroid Build Coastguard Worker        ""
202*35238bceSAndroid Build Coastguard Worker    end
203*35238bceSAndroid Build Coastguard Worker
204*35238bceSAndroid Build Coastguard Worker
205*35238bceSAndroid Build Coastguard Workerend # scalar_to_scalar
206*35238bceSAndroid Build Coastguard Workergroup scalar_to_vector "Scalar to Vector Conversions"
207*35238bceSAndroid Build Coastguard Worker
208*35238bceSAndroid Build Coastguard Worker    case float_to_vec2
209*35238bceSAndroid Build Coastguard Worker        values
210*35238bceSAndroid Build Coastguard Worker        {
211*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
212*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(2.0, 2.0) | vec2(3.5, 3.5) | vec2(-0.5, -0.5) | vec2(-8.25, -8.25) | vec2(-20.125, -20.125) | vec2(36.8125, 36.8125) ];
213*35238bceSAndroid Build Coastguard Worker        }
214*35238bceSAndroid Build Coastguard Worker
215*35238bceSAndroid Build Coastguard Worker        both ""
216*35238bceSAndroid Build Coastguard Worker            precision mediump float;
217*35238bceSAndroid Build Coastguard Worker            precision mediump int;
218*35238bceSAndroid Build Coastguard Worker
219*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
220*35238bceSAndroid Build Coastguard Worker
221*35238bceSAndroid Build Coastguard Worker            void main()
222*35238bceSAndroid Build Coastguard Worker            {
223*35238bceSAndroid Build Coastguard Worker                ${SETUP}
224*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
225*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
226*35238bceSAndroid Build Coastguard Worker            }
227*35238bceSAndroid Build Coastguard Worker        ""
228*35238bceSAndroid Build Coastguard Worker    end
229*35238bceSAndroid Build Coastguard Worker
230*35238bceSAndroid Build Coastguard Worker    case float_to_vec3
231*35238bceSAndroid Build Coastguard Worker        values
232*35238bceSAndroid Build Coastguard Worker        {
233*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
234*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(2.0, 2.0, 2.0) | vec3(3.5, 3.5, 3.5) | vec3(-0.5, -0.5, -0.5) | vec3(-8.25, -8.25, -8.25) | vec3(-20.125, -20.125, -20.125) | vec3(36.8125, 36.8125, 36.8125) ];
235*35238bceSAndroid Build Coastguard Worker        }
236*35238bceSAndroid Build Coastguard Worker
237*35238bceSAndroid Build Coastguard Worker        both ""
238*35238bceSAndroid Build Coastguard Worker            precision mediump float;
239*35238bceSAndroid Build Coastguard Worker            precision mediump int;
240*35238bceSAndroid Build Coastguard Worker
241*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
242*35238bceSAndroid Build Coastguard Worker
243*35238bceSAndroid Build Coastguard Worker            void main()
244*35238bceSAndroid Build Coastguard Worker            {
245*35238bceSAndroid Build Coastguard Worker                ${SETUP}
246*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
247*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
248*35238bceSAndroid Build Coastguard Worker            }
249*35238bceSAndroid Build Coastguard Worker        ""
250*35238bceSAndroid Build Coastguard Worker    end
251*35238bceSAndroid Build Coastguard Worker
252*35238bceSAndroid Build Coastguard Worker    case float_to_vec4
253*35238bceSAndroid Build Coastguard Worker        values
254*35238bceSAndroid Build Coastguard Worker        {
255*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
256*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(2.0, 2.0, 2.0, 2.0) | vec4(3.5, 3.5, 3.5, 3.5) | vec4(-0.5, -0.5, -0.5, -0.5) | vec4(-8.25, -8.25, -8.25, -8.25) | vec4(-20.125, -20.125, -20.125, -20.125) | vec4(36.8125, 36.8125, 36.8125, 36.8125) ];
257*35238bceSAndroid Build Coastguard Worker        }
258*35238bceSAndroid Build Coastguard Worker
259*35238bceSAndroid Build Coastguard Worker        both ""
260*35238bceSAndroid Build Coastguard Worker            precision mediump float;
261*35238bceSAndroid Build Coastguard Worker            precision mediump int;
262*35238bceSAndroid Build Coastguard Worker
263*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
264*35238bceSAndroid Build Coastguard Worker
265*35238bceSAndroid Build Coastguard Worker            void main()
266*35238bceSAndroid Build Coastguard Worker            {
267*35238bceSAndroid Build Coastguard Worker                ${SETUP}
268*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
269*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
270*35238bceSAndroid Build Coastguard Worker            }
271*35238bceSAndroid Build Coastguard Worker        ""
272*35238bceSAndroid Build Coastguard Worker    end
273*35238bceSAndroid Build Coastguard Worker
274*35238bceSAndroid Build Coastguard Worker    case float_to_ivec2
275*35238bceSAndroid Build Coastguard Worker        values
276*35238bceSAndroid Build Coastguard Worker        {
277*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
278*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(2, 2) | ivec2(3, 3) | ivec2(0, 0) | ivec2(-8, -8) | ivec2(-20, -20) | ivec2(36, 36) ];
279*35238bceSAndroid Build Coastguard Worker        }
280*35238bceSAndroid Build Coastguard Worker
281*35238bceSAndroid Build Coastguard Worker        both ""
282*35238bceSAndroid Build Coastguard Worker            precision mediump float;
283*35238bceSAndroid Build Coastguard Worker            precision mediump int;
284*35238bceSAndroid Build Coastguard Worker
285*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
286*35238bceSAndroid Build Coastguard Worker
287*35238bceSAndroid Build Coastguard Worker            void main()
288*35238bceSAndroid Build Coastguard Worker            {
289*35238bceSAndroid Build Coastguard Worker                ${SETUP}
290*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
291*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
292*35238bceSAndroid Build Coastguard Worker            }
293*35238bceSAndroid Build Coastguard Worker        ""
294*35238bceSAndroid Build Coastguard Worker    end
295*35238bceSAndroid Build Coastguard Worker
296*35238bceSAndroid Build Coastguard Worker    case float_to_ivec3
297*35238bceSAndroid Build Coastguard Worker        values
298*35238bceSAndroid Build Coastguard Worker        {
299*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
300*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(2, 2, 2) | ivec3(3, 3, 3) | ivec3(0, 0, 0) | ivec3(-8, -8, -8) | ivec3(-20, -20, -20) | ivec3(36, 36, 36) ];
301*35238bceSAndroid Build Coastguard Worker        }
302*35238bceSAndroid Build Coastguard Worker
303*35238bceSAndroid Build Coastguard Worker        both ""
304*35238bceSAndroid Build Coastguard Worker            precision mediump float;
305*35238bceSAndroid Build Coastguard Worker            precision mediump int;
306*35238bceSAndroid Build Coastguard Worker
307*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
308*35238bceSAndroid Build Coastguard Worker
309*35238bceSAndroid Build Coastguard Worker            void main()
310*35238bceSAndroid Build Coastguard Worker            {
311*35238bceSAndroid Build Coastguard Worker                ${SETUP}
312*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
313*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
314*35238bceSAndroid Build Coastguard Worker            }
315*35238bceSAndroid Build Coastguard Worker        ""
316*35238bceSAndroid Build Coastguard Worker    end
317*35238bceSAndroid Build Coastguard Worker
318*35238bceSAndroid Build Coastguard Worker    case float_to_ivec4
319*35238bceSAndroid Build Coastguard Worker        values
320*35238bceSAndroid Build Coastguard Worker        {
321*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
322*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(2, 2, 2, 2) | ivec4(3, 3, 3, 3) | ivec4(0, 0, 0, 0) | ivec4(-8, -8, -8, -8) | ivec4(-20, -20, -20, -20) | ivec4(36, 36, 36, 36) ];
323*35238bceSAndroid Build Coastguard Worker        }
324*35238bceSAndroid Build Coastguard Worker
325*35238bceSAndroid Build Coastguard Worker        both ""
326*35238bceSAndroid Build Coastguard Worker            precision mediump float;
327*35238bceSAndroid Build Coastguard Worker            precision mediump int;
328*35238bceSAndroid Build Coastguard Worker
329*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
330*35238bceSAndroid Build Coastguard Worker
331*35238bceSAndroid Build Coastguard Worker            void main()
332*35238bceSAndroid Build Coastguard Worker            {
333*35238bceSAndroid Build Coastguard Worker                ${SETUP}
334*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
335*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
336*35238bceSAndroid Build Coastguard Worker            }
337*35238bceSAndroid Build Coastguard Worker        ""
338*35238bceSAndroid Build Coastguard Worker    end
339*35238bceSAndroid Build Coastguard Worker
340*35238bceSAndroid Build Coastguard Worker    case float_to_bvec2
341*35238bceSAndroid Build Coastguard Worker        values
342*35238bceSAndroid Build Coastguard Worker        {
343*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
344*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, false) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) ];
345*35238bceSAndroid Build Coastguard Worker        }
346*35238bceSAndroid Build Coastguard Worker
347*35238bceSAndroid Build Coastguard Worker        both ""
348*35238bceSAndroid Build Coastguard Worker            precision mediump float;
349*35238bceSAndroid Build Coastguard Worker            precision mediump int;
350*35238bceSAndroid Build Coastguard Worker
351*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
352*35238bceSAndroid Build Coastguard Worker
353*35238bceSAndroid Build Coastguard Worker            void main()
354*35238bceSAndroid Build Coastguard Worker            {
355*35238bceSAndroid Build Coastguard Worker                ${SETUP}
356*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
357*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
358*35238bceSAndroid Build Coastguard Worker            }
359*35238bceSAndroid Build Coastguard Worker        ""
360*35238bceSAndroid Build Coastguard Worker    end
361*35238bceSAndroid Build Coastguard Worker
362*35238bceSAndroid Build Coastguard Worker    case float_to_bvec3
363*35238bceSAndroid Build Coastguard Worker        values
364*35238bceSAndroid Build Coastguard Worker        {
365*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
366*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) ];
367*35238bceSAndroid Build Coastguard Worker        }
368*35238bceSAndroid Build Coastguard Worker
369*35238bceSAndroid Build Coastguard Worker        both ""
370*35238bceSAndroid Build Coastguard Worker            precision mediump float;
371*35238bceSAndroid Build Coastguard Worker            precision mediump int;
372*35238bceSAndroid Build Coastguard Worker
373*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
374*35238bceSAndroid Build Coastguard Worker
375*35238bceSAndroid Build Coastguard Worker            void main()
376*35238bceSAndroid Build Coastguard Worker            {
377*35238bceSAndroid Build Coastguard Worker                ${SETUP}
378*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
379*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
380*35238bceSAndroid Build Coastguard Worker            }
381*35238bceSAndroid Build Coastguard Worker        ""
382*35238bceSAndroid Build Coastguard Worker    end
383*35238bceSAndroid Build Coastguard Worker
384*35238bceSAndroid Build Coastguard Worker    case float_to_bvec4
385*35238bceSAndroid Build Coastguard Worker        values
386*35238bceSAndroid Build Coastguard Worker        {
387*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
388*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) ];
389*35238bceSAndroid Build Coastguard Worker        }
390*35238bceSAndroid Build Coastguard Worker
391*35238bceSAndroid Build Coastguard Worker        both ""
392*35238bceSAndroid Build Coastguard Worker            precision mediump float;
393*35238bceSAndroid Build Coastguard Worker            precision mediump int;
394*35238bceSAndroid Build Coastguard Worker
395*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
396*35238bceSAndroid Build Coastguard Worker
397*35238bceSAndroid Build Coastguard Worker            void main()
398*35238bceSAndroid Build Coastguard Worker            {
399*35238bceSAndroid Build Coastguard Worker                ${SETUP}
400*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
401*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
402*35238bceSAndroid Build Coastguard Worker            }
403*35238bceSAndroid Build Coastguard Worker        ""
404*35238bceSAndroid Build Coastguard Worker    end
405*35238bceSAndroid Build Coastguard Worker
406*35238bceSAndroid Build Coastguard Worker    case int_to_vec2
407*35238bceSAndroid Build Coastguard Worker        values
408*35238bceSAndroid Build Coastguard Worker        {
409*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
410*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(2.0, 2.0) | vec2(5.0, 5.0) | vec2(8.0, 8.0) | vec2(11.0, 11.0) | vec2(-12.0, -12.0) | vec2(-66.0, -66.0) | vec2(-192.0, -192.0) | vec2(255.0, 255.0) ];
411*35238bceSAndroid Build Coastguard Worker        }
412*35238bceSAndroid Build Coastguard Worker
413*35238bceSAndroid Build Coastguard Worker        both ""
414*35238bceSAndroid Build Coastguard Worker            precision mediump float;
415*35238bceSAndroid Build Coastguard Worker            precision mediump int;
416*35238bceSAndroid Build Coastguard Worker
417*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
418*35238bceSAndroid Build Coastguard Worker
419*35238bceSAndroid Build Coastguard Worker            void main()
420*35238bceSAndroid Build Coastguard Worker            {
421*35238bceSAndroid Build Coastguard Worker                ${SETUP}
422*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
423*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
424*35238bceSAndroid Build Coastguard Worker            }
425*35238bceSAndroid Build Coastguard Worker        ""
426*35238bceSAndroid Build Coastguard Worker    end
427*35238bceSAndroid Build Coastguard Worker
428*35238bceSAndroid Build Coastguard Worker    case int_to_vec3
429*35238bceSAndroid Build Coastguard Worker        values
430*35238bceSAndroid Build Coastguard Worker        {
431*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
432*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(2.0, 2.0, 2.0) | vec3(5.0, 5.0, 5.0) | vec3(8.0, 8.0, 8.0) | vec3(11.0, 11.0, 11.0) | vec3(-12.0, -12.0, -12.0) | vec3(-66.0, -66.0, -66.0) | vec3(-192.0, -192.0, -192.0) | vec3(255.0, 255.0, 255.0) ];
433*35238bceSAndroid Build Coastguard Worker        }
434*35238bceSAndroid Build Coastguard Worker
435*35238bceSAndroid Build Coastguard Worker        both ""
436*35238bceSAndroid Build Coastguard Worker            precision mediump float;
437*35238bceSAndroid Build Coastguard Worker            precision mediump int;
438*35238bceSAndroid Build Coastguard Worker
439*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
440*35238bceSAndroid Build Coastguard Worker
441*35238bceSAndroid Build Coastguard Worker            void main()
442*35238bceSAndroid Build Coastguard Worker            {
443*35238bceSAndroid Build Coastguard Worker                ${SETUP}
444*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
445*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
446*35238bceSAndroid Build Coastguard Worker            }
447*35238bceSAndroid Build Coastguard Worker        ""
448*35238bceSAndroid Build Coastguard Worker    end
449*35238bceSAndroid Build Coastguard Worker
450*35238bceSAndroid Build Coastguard Worker    case int_to_vec4
451*35238bceSAndroid Build Coastguard Worker        values
452*35238bceSAndroid Build Coastguard Worker        {
453*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
454*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(2.0, 2.0, 2.0, 2.0) | vec4(5.0, 5.0, 5.0, 5.0) | vec4(8.0, 8.0, 8.0, 8.0) | vec4(11.0, 11.0, 11.0, 11.0) | vec4(-12.0, -12.0, -12.0, -12.0) | vec4(-66.0, -66.0, -66.0, -66.0) | vec4(-192.0, -192.0, -192.0, -192.0) | vec4(255.0, 255.0, 255.0, 255.0) ];
455*35238bceSAndroid Build Coastguard Worker        }
456*35238bceSAndroid Build Coastguard Worker
457*35238bceSAndroid Build Coastguard Worker        both ""
458*35238bceSAndroid Build Coastguard Worker            precision mediump float;
459*35238bceSAndroid Build Coastguard Worker            precision mediump int;
460*35238bceSAndroid Build Coastguard Worker
461*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
462*35238bceSAndroid Build Coastguard Worker
463*35238bceSAndroid Build Coastguard Worker            void main()
464*35238bceSAndroid Build Coastguard Worker            {
465*35238bceSAndroid Build Coastguard Worker                ${SETUP}
466*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
467*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
468*35238bceSAndroid Build Coastguard Worker            }
469*35238bceSAndroid Build Coastguard Worker        ""
470*35238bceSAndroid Build Coastguard Worker    end
471*35238bceSAndroid Build Coastguard Worker
472*35238bceSAndroid Build Coastguard Worker    case int_to_ivec2
473*35238bceSAndroid Build Coastguard Worker        values
474*35238bceSAndroid Build Coastguard Worker        {
475*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
476*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(2, 2) | ivec2(5, 5) | ivec2(8, 8) | ivec2(11, 11) | ivec2(-12, -12) | ivec2(-66, -66) | ivec2(-192, -192) | ivec2(255, 255) ];
477*35238bceSAndroid Build Coastguard Worker        }
478*35238bceSAndroid Build Coastguard Worker
479*35238bceSAndroid Build Coastguard Worker        both ""
480*35238bceSAndroid Build Coastguard Worker            precision mediump float;
481*35238bceSAndroid Build Coastguard Worker            precision mediump int;
482*35238bceSAndroid Build Coastguard Worker
483*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
484*35238bceSAndroid Build Coastguard Worker
485*35238bceSAndroid Build Coastguard Worker            void main()
486*35238bceSAndroid Build Coastguard Worker            {
487*35238bceSAndroid Build Coastguard Worker                ${SETUP}
488*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
489*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
490*35238bceSAndroid Build Coastguard Worker            }
491*35238bceSAndroid Build Coastguard Worker        ""
492*35238bceSAndroid Build Coastguard Worker    end
493*35238bceSAndroid Build Coastguard Worker
494*35238bceSAndroid Build Coastguard Worker    case int_to_ivec3
495*35238bceSAndroid Build Coastguard Worker        values
496*35238bceSAndroid Build Coastguard Worker        {
497*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
498*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(2, 2, 2) | ivec3(5, 5, 5) | ivec3(8, 8, 8) | ivec3(11, 11, 11) | ivec3(-12, -12, -12) | ivec3(-66, -66, -66) | ivec3(-192, -192, -192) | ivec3(255, 255, 255) ];
499*35238bceSAndroid Build Coastguard Worker        }
500*35238bceSAndroid Build Coastguard Worker
501*35238bceSAndroid Build Coastguard Worker        both ""
502*35238bceSAndroid Build Coastguard Worker            precision mediump float;
503*35238bceSAndroid Build Coastguard Worker            precision mediump int;
504*35238bceSAndroid Build Coastguard Worker
505*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
506*35238bceSAndroid Build Coastguard Worker
507*35238bceSAndroid Build Coastguard Worker            void main()
508*35238bceSAndroid Build Coastguard Worker            {
509*35238bceSAndroid Build Coastguard Worker                ${SETUP}
510*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
511*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
512*35238bceSAndroid Build Coastguard Worker            }
513*35238bceSAndroid Build Coastguard Worker        ""
514*35238bceSAndroid Build Coastguard Worker    end
515*35238bceSAndroid Build Coastguard Worker
516*35238bceSAndroid Build Coastguard Worker    case int_to_ivec4
517*35238bceSAndroid Build Coastguard Worker        values
518*35238bceSAndroid Build Coastguard Worker        {
519*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
520*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(2, 2, 2, 2) | ivec4(5, 5, 5, 5) | ivec4(8, 8, 8, 8) | ivec4(11, 11, 11, 11) | ivec4(-12, -12, -12, -12) | ivec4(-66, -66, -66, -66) | ivec4(-192, -192, -192, -192) | ivec4(255, 255, 255, 255) ];
521*35238bceSAndroid Build Coastguard Worker        }
522*35238bceSAndroid Build Coastguard Worker
523*35238bceSAndroid Build Coastguard Worker        both ""
524*35238bceSAndroid Build Coastguard Worker            precision mediump float;
525*35238bceSAndroid Build Coastguard Worker            precision mediump int;
526*35238bceSAndroid Build Coastguard Worker
527*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
528*35238bceSAndroid Build Coastguard Worker
529*35238bceSAndroid Build Coastguard Worker            void main()
530*35238bceSAndroid Build Coastguard Worker            {
531*35238bceSAndroid Build Coastguard Worker                ${SETUP}
532*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
533*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
534*35238bceSAndroid Build Coastguard Worker            }
535*35238bceSAndroid Build Coastguard Worker        ""
536*35238bceSAndroid Build Coastguard Worker    end
537*35238bceSAndroid Build Coastguard Worker
538*35238bceSAndroid Build Coastguard Worker    case int_to_bvec2
539*35238bceSAndroid Build Coastguard Worker        values
540*35238bceSAndroid Build Coastguard Worker        {
541*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
542*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, false) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) ];
543*35238bceSAndroid Build Coastguard Worker        }
544*35238bceSAndroid Build Coastguard Worker
545*35238bceSAndroid Build Coastguard Worker        both ""
546*35238bceSAndroid Build Coastguard Worker            precision mediump float;
547*35238bceSAndroid Build Coastguard Worker            precision mediump int;
548*35238bceSAndroid Build Coastguard Worker
549*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
550*35238bceSAndroid Build Coastguard Worker
551*35238bceSAndroid Build Coastguard Worker            void main()
552*35238bceSAndroid Build Coastguard Worker            {
553*35238bceSAndroid Build Coastguard Worker                ${SETUP}
554*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
555*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
556*35238bceSAndroid Build Coastguard Worker            }
557*35238bceSAndroid Build Coastguard Worker        ""
558*35238bceSAndroid Build Coastguard Worker    end
559*35238bceSAndroid Build Coastguard Worker
560*35238bceSAndroid Build Coastguard Worker    case int_to_bvec3
561*35238bceSAndroid Build Coastguard Worker        values
562*35238bceSAndroid Build Coastguard Worker        {
563*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
564*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) ];
565*35238bceSAndroid Build Coastguard Worker        }
566*35238bceSAndroid Build Coastguard Worker
567*35238bceSAndroid Build Coastguard Worker        both ""
568*35238bceSAndroid Build Coastguard Worker            precision mediump float;
569*35238bceSAndroid Build Coastguard Worker            precision mediump int;
570*35238bceSAndroid Build Coastguard Worker
571*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
572*35238bceSAndroid Build Coastguard Worker
573*35238bceSAndroid Build Coastguard Worker            void main()
574*35238bceSAndroid Build Coastguard Worker            {
575*35238bceSAndroid Build Coastguard Worker                ${SETUP}
576*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
577*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
578*35238bceSAndroid Build Coastguard Worker            }
579*35238bceSAndroid Build Coastguard Worker        ""
580*35238bceSAndroid Build Coastguard Worker    end
581*35238bceSAndroid Build Coastguard Worker
582*35238bceSAndroid Build Coastguard Worker    case int_to_bvec4
583*35238bceSAndroid Build Coastguard Worker        values
584*35238bceSAndroid Build Coastguard Worker        {
585*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
586*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) ];
587*35238bceSAndroid Build Coastguard Worker        }
588*35238bceSAndroid Build Coastguard Worker
589*35238bceSAndroid Build Coastguard Worker        both ""
590*35238bceSAndroid Build Coastguard Worker            precision mediump float;
591*35238bceSAndroid Build Coastguard Worker            precision mediump int;
592*35238bceSAndroid Build Coastguard Worker
593*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
594*35238bceSAndroid Build Coastguard Worker
595*35238bceSAndroid Build Coastguard Worker            void main()
596*35238bceSAndroid Build Coastguard Worker            {
597*35238bceSAndroid Build Coastguard Worker                ${SETUP}
598*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
599*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
600*35238bceSAndroid Build Coastguard Worker            }
601*35238bceSAndroid Build Coastguard Worker        ""
602*35238bceSAndroid Build Coastguard Worker    end
603*35238bceSAndroid Build Coastguard Worker
604*35238bceSAndroid Build Coastguard Worker    case bool_to_vec2
605*35238bceSAndroid Build Coastguard Worker        values
606*35238bceSAndroid Build Coastguard Worker        {
607*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
608*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, 1.0) | vec2(0.0, 0.0) ];
609*35238bceSAndroid Build Coastguard Worker        }
610*35238bceSAndroid Build Coastguard Worker
611*35238bceSAndroid Build Coastguard Worker        both ""
612*35238bceSAndroid Build Coastguard Worker            precision mediump float;
613*35238bceSAndroid Build Coastguard Worker            precision mediump int;
614*35238bceSAndroid Build Coastguard Worker
615*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
616*35238bceSAndroid Build Coastguard Worker
617*35238bceSAndroid Build Coastguard Worker            void main()
618*35238bceSAndroid Build Coastguard Worker            {
619*35238bceSAndroid Build Coastguard Worker                ${SETUP}
620*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
621*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
622*35238bceSAndroid Build Coastguard Worker            }
623*35238bceSAndroid Build Coastguard Worker        ""
624*35238bceSAndroid Build Coastguard Worker    end
625*35238bceSAndroid Build Coastguard Worker
626*35238bceSAndroid Build Coastguard Worker    case bool_to_vec3
627*35238bceSAndroid Build Coastguard Worker        values
628*35238bceSAndroid Build Coastguard Worker        {
629*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
630*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(1.0, 1.0, 1.0) | vec3(0.0, 0.0, 0.0) ];
631*35238bceSAndroid Build Coastguard Worker        }
632*35238bceSAndroid Build Coastguard Worker
633*35238bceSAndroid Build Coastguard Worker        both ""
634*35238bceSAndroid Build Coastguard Worker            precision mediump float;
635*35238bceSAndroid Build Coastguard Worker            precision mediump int;
636*35238bceSAndroid Build Coastguard Worker
637*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
638*35238bceSAndroid Build Coastguard Worker
639*35238bceSAndroid Build Coastguard Worker            void main()
640*35238bceSAndroid Build Coastguard Worker            {
641*35238bceSAndroid Build Coastguard Worker                ${SETUP}
642*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
643*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
644*35238bceSAndroid Build Coastguard Worker            }
645*35238bceSAndroid Build Coastguard Worker        ""
646*35238bceSAndroid Build Coastguard Worker    end
647*35238bceSAndroid Build Coastguard Worker
648*35238bceSAndroid Build Coastguard Worker    case bool_to_vec4
649*35238bceSAndroid Build Coastguard Worker        values
650*35238bceSAndroid Build Coastguard Worker        {
651*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
652*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 1.0, 1.0, 1.0) | vec4(0.0, 0.0, 0.0, 0.0) ];
653*35238bceSAndroid Build Coastguard Worker        }
654*35238bceSAndroid Build Coastguard Worker
655*35238bceSAndroid Build Coastguard Worker        both ""
656*35238bceSAndroid Build Coastguard Worker            precision mediump float;
657*35238bceSAndroid Build Coastguard Worker            precision mediump int;
658*35238bceSAndroid Build Coastguard Worker
659*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
660*35238bceSAndroid Build Coastguard Worker
661*35238bceSAndroid Build Coastguard Worker            void main()
662*35238bceSAndroid Build Coastguard Worker            {
663*35238bceSAndroid Build Coastguard Worker                ${SETUP}
664*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
665*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
666*35238bceSAndroid Build Coastguard Worker            }
667*35238bceSAndroid Build Coastguard Worker        ""
668*35238bceSAndroid Build Coastguard Worker    end
669*35238bceSAndroid Build Coastguard Worker
670*35238bceSAndroid Build Coastguard Worker    case bool_to_ivec2
671*35238bceSAndroid Build Coastguard Worker        values
672*35238bceSAndroid Build Coastguard Worker        {
673*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
674*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, 1) | ivec2(0, 0) ];
675*35238bceSAndroid Build Coastguard Worker        }
676*35238bceSAndroid Build Coastguard Worker
677*35238bceSAndroid Build Coastguard Worker        both ""
678*35238bceSAndroid Build Coastguard Worker            precision mediump float;
679*35238bceSAndroid Build Coastguard Worker            precision mediump int;
680*35238bceSAndroid Build Coastguard Worker
681*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
682*35238bceSAndroid Build Coastguard Worker
683*35238bceSAndroid Build Coastguard Worker            void main()
684*35238bceSAndroid Build Coastguard Worker            {
685*35238bceSAndroid Build Coastguard Worker                ${SETUP}
686*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
687*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
688*35238bceSAndroid Build Coastguard Worker            }
689*35238bceSAndroid Build Coastguard Worker        ""
690*35238bceSAndroid Build Coastguard Worker    end
691*35238bceSAndroid Build Coastguard Worker
692*35238bceSAndroid Build Coastguard Worker    case bool_to_ivec3
693*35238bceSAndroid Build Coastguard Worker        values
694*35238bceSAndroid Build Coastguard Worker        {
695*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
696*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(1, 1, 1) | ivec3(0, 0, 0) ];
697*35238bceSAndroid Build Coastguard Worker        }
698*35238bceSAndroid Build Coastguard Worker
699*35238bceSAndroid Build Coastguard Worker        both ""
700*35238bceSAndroid Build Coastguard Worker            precision mediump float;
701*35238bceSAndroid Build Coastguard Worker            precision mediump int;
702*35238bceSAndroid Build Coastguard Worker
703*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
704*35238bceSAndroid Build Coastguard Worker
705*35238bceSAndroid Build Coastguard Worker            void main()
706*35238bceSAndroid Build Coastguard Worker            {
707*35238bceSAndroid Build Coastguard Worker                ${SETUP}
708*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
709*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
710*35238bceSAndroid Build Coastguard Worker            }
711*35238bceSAndroid Build Coastguard Worker        ""
712*35238bceSAndroid Build Coastguard Worker    end
713*35238bceSAndroid Build Coastguard Worker
714*35238bceSAndroid Build Coastguard Worker    case bool_to_ivec4
715*35238bceSAndroid Build Coastguard Worker        values
716*35238bceSAndroid Build Coastguard Worker        {
717*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
718*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) ];
719*35238bceSAndroid Build Coastguard Worker        }
720*35238bceSAndroid Build Coastguard Worker
721*35238bceSAndroid Build Coastguard Worker        both ""
722*35238bceSAndroid Build Coastguard Worker            precision mediump float;
723*35238bceSAndroid Build Coastguard Worker            precision mediump int;
724*35238bceSAndroid Build Coastguard Worker
725*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
726*35238bceSAndroid Build Coastguard Worker
727*35238bceSAndroid Build Coastguard Worker            void main()
728*35238bceSAndroid Build Coastguard Worker            {
729*35238bceSAndroid Build Coastguard Worker                ${SETUP}
730*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
731*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
732*35238bceSAndroid Build Coastguard Worker            }
733*35238bceSAndroid Build Coastguard Worker        ""
734*35238bceSAndroid Build Coastguard Worker    end
735*35238bceSAndroid Build Coastguard Worker
736*35238bceSAndroid Build Coastguard Worker    case bool_to_bvec2
737*35238bceSAndroid Build Coastguard Worker        values
738*35238bceSAndroid Build Coastguard Worker        {
739*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
740*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(false, false) ];
741*35238bceSAndroid Build Coastguard Worker        }
742*35238bceSAndroid Build Coastguard Worker
743*35238bceSAndroid Build Coastguard Worker        both ""
744*35238bceSAndroid Build Coastguard Worker            precision mediump float;
745*35238bceSAndroid Build Coastguard Worker            precision mediump int;
746*35238bceSAndroid Build Coastguard Worker
747*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
748*35238bceSAndroid Build Coastguard Worker
749*35238bceSAndroid Build Coastguard Worker            void main()
750*35238bceSAndroid Build Coastguard Worker            {
751*35238bceSAndroid Build Coastguard Worker                ${SETUP}
752*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
753*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
754*35238bceSAndroid Build Coastguard Worker            }
755*35238bceSAndroid Build Coastguard Worker        ""
756*35238bceSAndroid Build Coastguard Worker    end
757*35238bceSAndroid Build Coastguard Worker
758*35238bceSAndroid Build Coastguard Worker    case bool_to_bvec3
759*35238bceSAndroid Build Coastguard Worker        values
760*35238bceSAndroid Build Coastguard Worker        {
761*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
762*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, true, true) | bvec3(false, false, false) ];
763*35238bceSAndroid Build Coastguard Worker        }
764*35238bceSAndroid Build Coastguard Worker
765*35238bceSAndroid Build Coastguard Worker        both ""
766*35238bceSAndroid Build Coastguard Worker            precision mediump float;
767*35238bceSAndroid Build Coastguard Worker            precision mediump int;
768*35238bceSAndroid Build Coastguard Worker
769*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
770*35238bceSAndroid Build Coastguard Worker
771*35238bceSAndroid Build Coastguard Worker            void main()
772*35238bceSAndroid Build Coastguard Worker            {
773*35238bceSAndroid Build Coastguard Worker                ${SETUP}
774*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
775*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
776*35238bceSAndroid Build Coastguard Worker            }
777*35238bceSAndroid Build Coastguard Worker        ""
778*35238bceSAndroid Build Coastguard Worker    end
779*35238bceSAndroid Build Coastguard Worker
780*35238bceSAndroid Build Coastguard Worker    case bool_to_bvec4
781*35238bceSAndroid Build Coastguard Worker        values
782*35238bceSAndroid Build Coastguard Worker        {
783*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
784*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
785*35238bceSAndroid Build Coastguard Worker        }
786*35238bceSAndroid Build Coastguard Worker
787*35238bceSAndroid Build Coastguard Worker        both ""
788*35238bceSAndroid Build Coastguard Worker            precision mediump float;
789*35238bceSAndroid Build Coastguard Worker            precision mediump int;
790*35238bceSAndroid Build Coastguard Worker
791*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
792*35238bceSAndroid Build Coastguard Worker
793*35238bceSAndroid Build Coastguard Worker            void main()
794*35238bceSAndroid Build Coastguard Worker            {
795*35238bceSAndroid Build Coastguard Worker                ${SETUP}
796*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
797*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
798*35238bceSAndroid Build Coastguard Worker            }
799*35238bceSAndroid Build Coastguard Worker        ""
800*35238bceSAndroid Build Coastguard Worker    end
801*35238bceSAndroid Build Coastguard Worker
802*35238bceSAndroid Build Coastguard Worker
803*35238bceSAndroid Build Coastguard Workerend # scalar_to_vector
804*35238bceSAndroid Build Coastguard Workergroup vector_to_scalar "Vector to Scalar Conversions"
805*35238bceSAndroid Build Coastguard Worker
806*35238bceSAndroid Build Coastguard Worker    case vec2_to_float
807*35238bceSAndroid Build Coastguard Worker        values
808*35238bceSAndroid Build Coastguard Worker        {
809*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
810*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
811*35238bceSAndroid Build Coastguard Worker        }
812*35238bceSAndroid Build Coastguard Worker
813*35238bceSAndroid Build Coastguard Worker        both ""
814*35238bceSAndroid Build Coastguard Worker            precision mediump float;
815*35238bceSAndroid Build Coastguard Worker            precision mediump int;
816*35238bceSAndroid Build Coastguard Worker
817*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
818*35238bceSAndroid Build Coastguard Worker
819*35238bceSAndroid Build Coastguard Worker            void main()
820*35238bceSAndroid Build Coastguard Worker            {
821*35238bceSAndroid Build Coastguard Worker                ${SETUP}
822*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
823*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
824*35238bceSAndroid Build Coastguard Worker            }
825*35238bceSAndroid Build Coastguard Worker        ""
826*35238bceSAndroid Build Coastguard Worker    end
827*35238bceSAndroid Build Coastguard Worker
828*35238bceSAndroid Build Coastguard Worker    case vec2_to_int
829*35238bceSAndroid Build Coastguard Worker        values
830*35238bceSAndroid Build Coastguard Worker        {
831*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
832*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
833*35238bceSAndroid Build Coastguard Worker        }
834*35238bceSAndroid Build Coastguard Worker
835*35238bceSAndroid Build Coastguard Worker        both ""
836*35238bceSAndroid Build Coastguard Worker            precision mediump float;
837*35238bceSAndroid Build Coastguard Worker            precision mediump int;
838*35238bceSAndroid Build Coastguard Worker
839*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
840*35238bceSAndroid Build Coastguard Worker
841*35238bceSAndroid Build Coastguard Worker            void main()
842*35238bceSAndroid Build Coastguard Worker            {
843*35238bceSAndroid Build Coastguard Worker                ${SETUP}
844*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
845*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
846*35238bceSAndroid Build Coastguard Worker            }
847*35238bceSAndroid Build Coastguard Worker        ""
848*35238bceSAndroid Build Coastguard Worker    end
849*35238bceSAndroid Build Coastguard Worker
850*35238bceSAndroid Build Coastguard Worker    case vec2_to_bool
851*35238bceSAndroid Build Coastguard Worker        values
852*35238bceSAndroid Build Coastguard Worker        {
853*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
854*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | true | true | true ];
855*35238bceSAndroid Build Coastguard Worker        }
856*35238bceSAndroid Build Coastguard Worker
857*35238bceSAndroid Build Coastguard Worker        both ""
858*35238bceSAndroid Build Coastguard Worker            precision mediump float;
859*35238bceSAndroid Build Coastguard Worker            precision mediump int;
860*35238bceSAndroid Build Coastguard Worker
861*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
862*35238bceSAndroid Build Coastguard Worker
863*35238bceSAndroid Build Coastguard Worker            void main()
864*35238bceSAndroid Build Coastguard Worker            {
865*35238bceSAndroid Build Coastguard Worker                ${SETUP}
866*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
867*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
868*35238bceSAndroid Build Coastguard Worker            }
869*35238bceSAndroid Build Coastguard Worker        ""
870*35238bceSAndroid Build Coastguard Worker    end
871*35238bceSAndroid Build Coastguard Worker
872*35238bceSAndroid Build Coastguard Worker    case vec3_to_float
873*35238bceSAndroid Build Coastguard Worker        values
874*35238bceSAndroid Build Coastguard Worker        {
875*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
876*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
877*35238bceSAndroid Build Coastguard Worker        }
878*35238bceSAndroid Build Coastguard Worker
879*35238bceSAndroid Build Coastguard Worker        both ""
880*35238bceSAndroid Build Coastguard Worker            precision mediump float;
881*35238bceSAndroid Build Coastguard Worker            precision mediump int;
882*35238bceSAndroid Build Coastguard Worker
883*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
884*35238bceSAndroid Build Coastguard Worker
885*35238bceSAndroid Build Coastguard Worker            void main()
886*35238bceSAndroid Build Coastguard Worker            {
887*35238bceSAndroid Build Coastguard Worker                ${SETUP}
888*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
889*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
890*35238bceSAndroid Build Coastguard Worker            }
891*35238bceSAndroid Build Coastguard Worker        ""
892*35238bceSAndroid Build Coastguard Worker    end
893*35238bceSAndroid Build Coastguard Worker
894*35238bceSAndroid Build Coastguard Worker    case vec3_to_int
895*35238bceSAndroid Build Coastguard Worker        values
896*35238bceSAndroid Build Coastguard Worker        {
897*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
898*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
899*35238bceSAndroid Build Coastguard Worker        }
900*35238bceSAndroid Build Coastguard Worker
901*35238bceSAndroid Build Coastguard Worker        both ""
902*35238bceSAndroid Build Coastguard Worker            precision mediump float;
903*35238bceSAndroid Build Coastguard Worker            precision mediump int;
904*35238bceSAndroid Build Coastguard Worker
905*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
906*35238bceSAndroid Build Coastguard Worker
907*35238bceSAndroid Build Coastguard Worker            void main()
908*35238bceSAndroid Build Coastguard Worker            {
909*35238bceSAndroid Build Coastguard Worker                ${SETUP}
910*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
911*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
912*35238bceSAndroid Build Coastguard Worker            }
913*35238bceSAndroid Build Coastguard Worker        ""
914*35238bceSAndroid Build Coastguard Worker    end
915*35238bceSAndroid Build Coastguard Worker
916*35238bceSAndroid Build Coastguard Worker    case vec3_to_bool
917*35238bceSAndroid Build Coastguard Worker        values
918*35238bceSAndroid Build Coastguard Worker        {
919*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
920*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | true | true | true ];
921*35238bceSAndroid Build Coastguard Worker        }
922*35238bceSAndroid Build Coastguard Worker
923*35238bceSAndroid Build Coastguard Worker        both ""
924*35238bceSAndroid Build Coastguard Worker            precision mediump float;
925*35238bceSAndroid Build Coastguard Worker            precision mediump int;
926*35238bceSAndroid Build Coastguard Worker
927*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
928*35238bceSAndroid Build Coastguard Worker
929*35238bceSAndroid Build Coastguard Worker            void main()
930*35238bceSAndroid Build Coastguard Worker            {
931*35238bceSAndroid Build Coastguard Worker                ${SETUP}
932*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
933*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
934*35238bceSAndroid Build Coastguard Worker            }
935*35238bceSAndroid Build Coastguard Worker        ""
936*35238bceSAndroid Build Coastguard Worker    end
937*35238bceSAndroid Build Coastguard Worker
938*35238bceSAndroid Build Coastguard Worker    case vec4_to_float
939*35238bceSAndroid Build Coastguard Worker        values
940*35238bceSAndroid Build Coastguard Worker        {
941*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
942*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | -0.5 | -32.0 | -0.75 ];
943*35238bceSAndroid Build Coastguard Worker        }
944*35238bceSAndroid Build Coastguard Worker
945*35238bceSAndroid Build Coastguard Worker        both ""
946*35238bceSAndroid Build Coastguard Worker            precision mediump float;
947*35238bceSAndroid Build Coastguard Worker            precision mediump int;
948*35238bceSAndroid Build Coastguard Worker
949*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
950*35238bceSAndroid Build Coastguard Worker
951*35238bceSAndroid Build Coastguard Worker            void main()
952*35238bceSAndroid Build Coastguard Worker            {
953*35238bceSAndroid Build Coastguard Worker                ${SETUP}
954*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
955*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
956*35238bceSAndroid Build Coastguard Worker            }
957*35238bceSAndroid Build Coastguard Worker        ""
958*35238bceSAndroid Build Coastguard Worker    end
959*35238bceSAndroid Build Coastguard Worker
960*35238bceSAndroid Build Coastguard Worker    case vec4_to_int
961*35238bceSAndroid Build Coastguard Worker        values
962*35238bceSAndroid Build Coastguard Worker        {
963*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
964*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
965*35238bceSAndroid Build Coastguard Worker        }
966*35238bceSAndroid Build Coastguard Worker
967*35238bceSAndroid Build Coastguard Worker        both ""
968*35238bceSAndroid Build Coastguard Worker            precision mediump float;
969*35238bceSAndroid Build Coastguard Worker            precision mediump int;
970*35238bceSAndroid Build Coastguard Worker
971*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
972*35238bceSAndroid Build Coastguard Worker
973*35238bceSAndroid Build Coastguard Worker            void main()
974*35238bceSAndroid Build Coastguard Worker            {
975*35238bceSAndroid Build Coastguard Worker                ${SETUP}
976*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
977*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
978*35238bceSAndroid Build Coastguard Worker            }
979*35238bceSAndroid Build Coastguard Worker        ""
980*35238bceSAndroid Build Coastguard Worker    end
981*35238bceSAndroid Build Coastguard Worker
982*35238bceSAndroid Build Coastguard Worker    case vec4_to_bool
983*35238bceSAndroid Build Coastguard Worker        values
984*35238bceSAndroid Build Coastguard Worker        {
985*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
986*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | true | true | true ];
987*35238bceSAndroid Build Coastguard Worker        }
988*35238bceSAndroid Build Coastguard Worker
989*35238bceSAndroid Build Coastguard Worker        both ""
990*35238bceSAndroid Build Coastguard Worker            precision mediump float;
991*35238bceSAndroid Build Coastguard Worker            precision mediump int;
992*35238bceSAndroid Build Coastguard Worker
993*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
994*35238bceSAndroid Build Coastguard Worker
995*35238bceSAndroid Build Coastguard Worker            void main()
996*35238bceSAndroid Build Coastguard Worker            {
997*35238bceSAndroid Build Coastguard Worker                ${SETUP}
998*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
999*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1000*35238bceSAndroid Build Coastguard Worker            }
1001*35238bceSAndroid Build Coastguard Worker        ""
1002*35238bceSAndroid Build Coastguard Worker    end
1003*35238bceSAndroid Build Coastguard Worker
1004*35238bceSAndroid Build Coastguard Worker    case ivec2_to_float
1005*35238bceSAndroid Build Coastguard Worker        values
1006*35238bceSAndroid Build Coastguard Worker        {
1007*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
1008*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | 0.0 | -32.0 | 0.0 ];
1009*35238bceSAndroid Build Coastguard Worker        }
1010*35238bceSAndroid Build Coastguard Worker
1011*35238bceSAndroid Build Coastguard Worker        both ""
1012*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1013*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1014*35238bceSAndroid Build Coastguard Worker
1015*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1016*35238bceSAndroid Build Coastguard Worker
1017*35238bceSAndroid Build Coastguard Worker            void main()
1018*35238bceSAndroid Build Coastguard Worker            {
1019*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1020*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1021*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1022*35238bceSAndroid Build Coastguard Worker            }
1023*35238bceSAndroid Build Coastguard Worker        ""
1024*35238bceSAndroid Build Coastguard Worker    end
1025*35238bceSAndroid Build Coastguard Worker
1026*35238bceSAndroid Build Coastguard Worker    case ivec2_to_int
1027*35238bceSAndroid Build Coastguard Worker        values
1028*35238bceSAndroid Build Coastguard Worker        {
1029*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
1030*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
1031*35238bceSAndroid Build Coastguard Worker        }
1032*35238bceSAndroid Build Coastguard Worker
1033*35238bceSAndroid Build Coastguard Worker        both ""
1034*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1035*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1036*35238bceSAndroid Build Coastguard Worker
1037*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1038*35238bceSAndroid Build Coastguard Worker
1039*35238bceSAndroid Build Coastguard Worker            void main()
1040*35238bceSAndroid Build Coastguard Worker            {
1041*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1042*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1043*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1044*35238bceSAndroid Build Coastguard Worker            }
1045*35238bceSAndroid Build Coastguard Worker        ""
1046*35238bceSAndroid Build Coastguard Worker    end
1047*35238bceSAndroid Build Coastguard Worker
1048*35238bceSAndroid Build Coastguard Worker    case ivec2_to_bool
1049*35238bceSAndroid Build Coastguard Worker        values
1050*35238bceSAndroid Build Coastguard Worker        {
1051*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
1052*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | false | true | false ];
1053*35238bceSAndroid Build Coastguard Worker        }
1054*35238bceSAndroid Build Coastguard Worker
1055*35238bceSAndroid Build Coastguard Worker        both ""
1056*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1057*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1058*35238bceSAndroid Build Coastguard Worker
1059*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1060*35238bceSAndroid Build Coastguard Worker
1061*35238bceSAndroid Build Coastguard Worker            void main()
1062*35238bceSAndroid Build Coastguard Worker            {
1063*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1064*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1065*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1066*35238bceSAndroid Build Coastguard Worker            }
1067*35238bceSAndroid Build Coastguard Worker        ""
1068*35238bceSAndroid Build Coastguard Worker    end
1069*35238bceSAndroid Build Coastguard Worker
1070*35238bceSAndroid Build Coastguard Worker    case ivec3_to_float
1071*35238bceSAndroid Build Coastguard Worker        values
1072*35238bceSAndroid Build Coastguard Worker        {
1073*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
1074*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | 0.0 | -32.0 | 0.0 ];
1075*35238bceSAndroid Build Coastguard Worker        }
1076*35238bceSAndroid Build Coastguard Worker
1077*35238bceSAndroid Build Coastguard Worker        both ""
1078*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1079*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1080*35238bceSAndroid Build Coastguard Worker
1081*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1082*35238bceSAndroid Build Coastguard Worker
1083*35238bceSAndroid Build Coastguard Worker            void main()
1084*35238bceSAndroid Build Coastguard Worker            {
1085*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1086*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1087*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1088*35238bceSAndroid Build Coastguard Worker            }
1089*35238bceSAndroid Build Coastguard Worker        ""
1090*35238bceSAndroid Build Coastguard Worker    end
1091*35238bceSAndroid Build Coastguard Worker
1092*35238bceSAndroid Build Coastguard Worker    case ivec3_to_int
1093*35238bceSAndroid Build Coastguard Worker        values
1094*35238bceSAndroid Build Coastguard Worker        {
1095*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
1096*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
1097*35238bceSAndroid Build Coastguard Worker        }
1098*35238bceSAndroid Build Coastguard Worker
1099*35238bceSAndroid Build Coastguard Worker        both ""
1100*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1101*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1102*35238bceSAndroid Build Coastguard Worker
1103*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1104*35238bceSAndroid Build Coastguard Worker
1105*35238bceSAndroid Build Coastguard Worker            void main()
1106*35238bceSAndroid Build Coastguard Worker            {
1107*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1108*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1109*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1110*35238bceSAndroid Build Coastguard Worker            }
1111*35238bceSAndroid Build Coastguard Worker        ""
1112*35238bceSAndroid Build Coastguard Worker    end
1113*35238bceSAndroid Build Coastguard Worker
1114*35238bceSAndroid Build Coastguard Worker    case ivec3_to_bool
1115*35238bceSAndroid Build Coastguard Worker        values
1116*35238bceSAndroid Build Coastguard Worker        {
1117*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
1118*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | false | true | false ];
1119*35238bceSAndroid Build Coastguard Worker        }
1120*35238bceSAndroid Build Coastguard Worker
1121*35238bceSAndroid Build Coastguard Worker        both ""
1122*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1123*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1124*35238bceSAndroid Build Coastguard Worker
1125*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1126*35238bceSAndroid Build Coastguard Worker
1127*35238bceSAndroid Build Coastguard Worker            void main()
1128*35238bceSAndroid Build Coastguard Worker            {
1129*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1130*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1131*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1132*35238bceSAndroid Build Coastguard Worker            }
1133*35238bceSAndroid Build Coastguard Worker        ""
1134*35238bceSAndroid Build Coastguard Worker    end
1135*35238bceSAndroid Build Coastguard Worker
1136*35238bceSAndroid Build Coastguard Worker    case ivec4_to_float
1137*35238bceSAndroid Build Coastguard Worker        values
1138*35238bceSAndroid Build Coastguard Worker        {
1139*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
1140*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 0.0 | 1.0 | 0.0 | -32.0 | 0.0 ];
1141*35238bceSAndroid Build Coastguard Worker        }
1142*35238bceSAndroid Build Coastguard Worker
1143*35238bceSAndroid Build Coastguard Worker        both ""
1144*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1145*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1146*35238bceSAndroid Build Coastguard Worker
1147*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1148*35238bceSAndroid Build Coastguard Worker
1149*35238bceSAndroid Build Coastguard Worker            void main()
1150*35238bceSAndroid Build Coastguard Worker            {
1151*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1152*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1153*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1154*35238bceSAndroid Build Coastguard Worker            }
1155*35238bceSAndroid Build Coastguard Worker        ""
1156*35238bceSAndroid Build Coastguard Worker    end
1157*35238bceSAndroid Build Coastguard Worker
1158*35238bceSAndroid Build Coastguard Worker    case ivec4_to_int
1159*35238bceSAndroid Build Coastguard Worker        values
1160*35238bceSAndroid Build Coastguard Worker        {
1161*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
1162*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 0 | 1 | 0 | -32 | 0 ];
1163*35238bceSAndroid Build Coastguard Worker        }
1164*35238bceSAndroid Build Coastguard Worker
1165*35238bceSAndroid Build Coastguard Worker        both ""
1166*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1167*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1168*35238bceSAndroid Build Coastguard Worker
1169*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1170*35238bceSAndroid Build Coastguard Worker
1171*35238bceSAndroid Build Coastguard Worker            void main()
1172*35238bceSAndroid Build Coastguard Worker            {
1173*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1174*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1175*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1176*35238bceSAndroid Build Coastguard Worker            }
1177*35238bceSAndroid Build Coastguard Worker        ""
1178*35238bceSAndroid Build Coastguard Worker    end
1179*35238bceSAndroid Build Coastguard Worker
1180*35238bceSAndroid Build Coastguard Worker    case ivec4_to_bool
1181*35238bceSAndroid Build Coastguard Worker        values
1182*35238bceSAndroid Build Coastguard Worker        {
1183*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
1184*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ false | true | false | true | false ];
1185*35238bceSAndroid Build Coastguard Worker        }
1186*35238bceSAndroid Build Coastguard Worker
1187*35238bceSAndroid Build Coastguard Worker        both ""
1188*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1189*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1190*35238bceSAndroid Build Coastguard Worker
1191*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1192*35238bceSAndroid Build Coastguard Worker
1193*35238bceSAndroid Build Coastguard Worker            void main()
1194*35238bceSAndroid Build Coastguard Worker            {
1195*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1196*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1197*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1198*35238bceSAndroid Build Coastguard Worker            }
1199*35238bceSAndroid Build Coastguard Worker        ""
1200*35238bceSAndroid Build Coastguard Worker    end
1201*35238bceSAndroid Build Coastguard Worker
1202*35238bceSAndroid Build Coastguard Worker    case bvec2_to_float
1203*35238bceSAndroid Build Coastguard Worker        values
1204*35238bceSAndroid Build Coastguard Worker        {
1205*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
1206*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 1.0 | 0.0 | 0.0 | 1.0 | 0.0 ];
1207*35238bceSAndroid Build Coastguard Worker        }
1208*35238bceSAndroid Build Coastguard Worker
1209*35238bceSAndroid Build Coastguard Worker        both ""
1210*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1211*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1212*35238bceSAndroid Build Coastguard Worker
1213*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1214*35238bceSAndroid Build Coastguard Worker
1215*35238bceSAndroid Build Coastguard Worker            void main()
1216*35238bceSAndroid Build Coastguard Worker            {
1217*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1218*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1219*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1220*35238bceSAndroid Build Coastguard Worker            }
1221*35238bceSAndroid Build Coastguard Worker        ""
1222*35238bceSAndroid Build Coastguard Worker    end
1223*35238bceSAndroid Build Coastguard Worker
1224*35238bceSAndroid Build Coastguard Worker    case bvec2_to_int
1225*35238bceSAndroid Build Coastguard Worker        values
1226*35238bceSAndroid Build Coastguard Worker        {
1227*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
1228*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 1 | 0 | 0 | 1 | 0 ];
1229*35238bceSAndroid Build Coastguard Worker        }
1230*35238bceSAndroid Build Coastguard Worker
1231*35238bceSAndroid Build Coastguard Worker        both ""
1232*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1233*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1234*35238bceSAndroid Build Coastguard Worker
1235*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1236*35238bceSAndroid Build Coastguard Worker
1237*35238bceSAndroid Build Coastguard Worker            void main()
1238*35238bceSAndroid Build Coastguard Worker            {
1239*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1240*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1241*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1242*35238bceSAndroid Build Coastguard Worker            }
1243*35238bceSAndroid Build Coastguard Worker        ""
1244*35238bceSAndroid Build Coastguard Worker    end
1245*35238bceSAndroid Build Coastguard Worker
1246*35238bceSAndroid Build Coastguard Worker    case bvec2_to_bool
1247*35238bceSAndroid Build Coastguard Worker        values
1248*35238bceSAndroid Build Coastguard Worker        {
1249*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
1250*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ true | false | false | true | false ];
1251*35238bceSAndroid Build Coastguard Worker        }
1252*35238bceSAndroid Build Coastguard Worker
1253*35238bceSAndroid Build Coastguard Worker        both ""
1254*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1255*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1256*35238bceSAndroid Build Coastguard Worker
1257*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1258*35238bceSAndroid Build Coastguard Worker
1259*35238bceSAndroid Build Coastguard Worker            void main()
1260*35238bceSAndroid Build Coastguard Worker            {
1261*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1262*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1263*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1264*35238bceSAndroid Build Coastguard Worker            }
1265*35238bceSAndroid Build Coastguard Worker        ""
1266*35238bceSAndroid Build Coastguard Worker    end
1267*35238bceSAndroid Build Coastguard Worker
1268*35238bceSAndroid Build Coastguard Worker    case bvec3_to_float
1269*35238bceSAndroid Build Coastguard Worker        values
1270*35238bceSAndroid Build Coastguard Worker        {
1271*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
1272*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 1.0 | 0.0 | 0.0 | 1.0 | 0.0 ];
1273*35238bceSAndroid Build Coastguard Worker        }
1274*35238bceSAndroid Build Coastguard Worker
1275*35238bceSAndroid Build Coastguard Worker        both ""
1276*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1277*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1278*35238bceSAndroid Build Coastguard Worker
1279*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1280*35238bceSAndroid Build Coastguard Worker
1281*35238bceSAndroid Build Coastguard Worker            void main()
1282*35238bceSAndroid Build Coastguard Worker            {
1283*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1284*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1285*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1286*35238bceSAndroid Build Coastguard Worker            }
1287*35238bceSAndroid Build Coastguard Worker        ""
1288*35238bceSAndroid Build Coastguard Worker    end
1289*35238bceSAndroid Build Coastguard Worker
1290*35238bceSAndroid Build Coastguard Worker    case bvec3_to_int
1291*35238bceSAndroid Build Coastguard Worker        values
1292*35238bceSAndroid Build Coastguard Worker        {
1293*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
1294*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 1 | 0 | 0 | 1 | 0 ];
1295*35238bceSAndroid Build Coastguard Worker        }
1296*35238bceSAndroid Build Coastguard Worker
1297*35238bceSAndroid Build Coastguard Worker        both ""
1298*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1299*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1300*35238bceSAndroid Build Coastguard Worker
1301*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1302*35238bceSAndroid Build Coastguard Worker
1303*35238bceSAndroid Build Coastguard Worker            void main()
1304*35238bceSAndroid Build Coastguard Worker            {
1305*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1306*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1307*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1308*35238bceSAndroid Build Coastguard Worker            }
1309*35238bceSAndroid Build Coastguard Worker        ""
1310*35238bceSAndroid Build Coastguard Worker    end
1311*35238bceSAndroid Build Coastguard Worker
1312*35238bceSAndroid Build Coastguard Worker    case bvec3_to_bool
1313*35238bceSAndroid Build Coastguard Worker        values
1314*35238bceSAndroid Build Coastguard Worker        {
1315*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
1316*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ true | false | false | true | false ];
1317*35238bceSAndroid Build Coastguard Worker        }
1318*35238bceSAndroid Build Coastguard Worker
1319*35238bceSAndroid Build Coastguard Worker        both ""
1320*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1321*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1322*35238bceSAndroid Build Coastguard Worker
1323*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1324*35238bceSAndroid Build Coastguard Worker
1325*35238bceSAndroid Build Coastguard Worker            void main()
1326*35238bceSAndroid Build Coastguard Worker            {
1327*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1328*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1329*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1330*35238bceSAndroid Build Coastguard Worker            }
1331*35238bceSAndroid Build Coastguard Worker        ""
1332*35238bceSAndroid Build Coastguard Worker    end
1333*35238bceSAndroid Build Coastguard Worker
1334*35238bceSAndroid Build Coastguard Worker    case bvec4_to_float
1335*35238bceSAndroid Build Coastguard Worker        values
1336*35238bceSAndroid Build Coastguard Worker        {
1337*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
1338*35238bceSAndroid Build Coastguard Worker            output float out0 = [ 1.0 | 0.0 | 0.0 | 1.0 | 0.0 ];
1339*35238bceSAndroid Build Coastguard Worker        }
1340*35238bceSAndroid Build Coastguard Worker
1341*35238bceSAndroid Build Coastguard Worker        both ""
1342*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1343*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1344*35238bceSAndroid Build Coastguard Worker
1345*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1346*35238bceSAndroid Build Coastguard Worker
1347*35238bceSAndroid Build Coastguard Worker            void main()
1348*35238bceSAndroid Build Coastguard Worker            {
1349*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1350*35238bceSAndroid Build Coastguard Worker                out0 = float(in0);
1351*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1352*35238bceSAndroid Build Coastguard Worker            }
1353*35238bceSAndroid Build Coastguard Worker        ""
1354*35238bceSAndroid Build Coastguard Worker    end
1355*35238bceSAndroid Build Coastguard Worker
1356*35238bceSAndroid Build Coastguard Worker    case bvec4_to_int
1357*35238bceSAndroid Build Coastguard Worker        values
1358*35238bceSAndroid Build Coastguard Worker        {
1359*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
1360*35238bceSAndroid Build Coastguard Worker            output int out0 = [ 1 | 0 | 0 | 1 | 0 ];
1361*35238bceSAndroid Build Coastguard Worker        }
1362*35238bceSAndroid Build Coastguard Worker
1363*35238bceSAndroid Build Coastguard Worker        both ""
1364*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1365*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1366*35238bceSAndroid Build Coastguard Worker
1367*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1368*35238bceSAndroid Build Coastguard Worker
1369*35238bceSAndroid Build Coastguard Worker            void main()
1370*35238bceSAndroid Build Coastguard Worker            {
1371*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1372*35238bceSAndroid Build Coastguard Worker                out0 = int(in0);
1373*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1374*35238bceSAndroid Build Coastguard Worker            }
1375*35238bceSAndroid Build Coastguard Worker        ""
1376*35238bceSAndroid Build Coastguard Worker    end
1377*35238bceSAndroid Build Coastguard Worker
1378*35238bceSAndroid Build Coastguard Worker    case bvec4_to_bool
1379*35238bceSAndroid Build Coastguard Worker        values
1380*35238bceSAndroid Build Coastguard Worker        {
1381*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
1382*35238bceSAndroid Build Coastguard Worker            output bool out0 = [ true | false | false | true | false ];
1383*35238bceSAndroid Build Coastguard Worker        }
1384*35238bceSAndroid Build Coastguard Worker
1385*35238bceSAndroid Build Coastguard Worker        both ""
1386*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1387*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1388*35238bceSAndroid Build Coastguard Worker
1389*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1390*35238bceSAndroid Build Coastguard Worker
1391*35238bceSAndroid Build Coastguard Worker            void main()
1392*35238bceSAndroid Build Coastguard Worker            {
1393*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1394*35238bceSAndroid Build Coastguard Worker                out0 = bool(in0);
1395*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1396*35238bceSAndroid Build Coastguard Worker            }
1397*35238bceSAndroid Build Coastguard Worker        ""
1398*35238bceSAndroid Build Coastguard Worker    end
1399*35238bceSAndroid Build Coastguard Worker
1400*35238bceSAndroid Build Coastguard Worker
1401*35238bceSAndroid Build Coastguard Workerend # vector_to_scalar
1402*35238bceSAndroid Build Coastguard Workergroup vector_illegal "Illegal Vector Conversions"
1403*35238bceSAndroid Build Coastguard Worker
1404*35238bceSAndroid Build Coastguard Worker    case vec2_to_vec3
1405*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1406*35238bceSAndroid Build Coastguard Worker        values {}
1407*35238bceSAndroid Build Coastguard Worker
1408*35238bceSAndroid Build Coastguard Worker        both ""
1409*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1410*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1411*35238bceSAndroid Build Coastguard Worker
1412*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1413*35238bceSAndroid Build Coastguard Worker
1414*35238bceSAndroid Build Coastguard Worker            void main()
1415*35238bceSAndroid Build Coastguard Worker            {
1416*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1417*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1418*35238bceSAndroid Build Coastguard Worker                vec3 out0 = vec3(in0);
1419*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1420*35238bceSAndroid Build Coastguard Worker            }
1421*35238bceSAndroid Build Coastguard Worker        ""
1422*35238bceSAndroid Build Coastguard Worker    end
1423*35238bceSAndroid Build Coastguard Worker
1424*35238bceSAndroid Build Coastguard Worker    case vec2_to_ivec3
1425*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1426*35238bceSAndroid Build Coastguard Worker        values {}
1427*35238bceSAndroid Build Coastguard Worker
1428*35238bceSAndroid Build Coastguard Worker        both ""
1429*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1430*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1431*35238bceSAndroid Build Coastguard Worker
1432*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1433*35238bceSAndroid Build Coastguard Worker
1434*35238bceSAndroid Build Coastguard Worker            void main()
1435*35238bceSAndroid Build Coastguard Worker            {
1436*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1437*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1438*35238bceSAndroid Build Coastguard Worker                ivec3 out0 = ivec3(in0);
1439*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1440*35238bceSAndroid Build Coastguard Worker            }
1441*35238bceSAndroid Build Coastguard Worker        ""
1442*35238bceSAndroid Build Coastguard Worker    end
1443*35238bceSAndroid Build Coastguard Worker
1444*35238bceSAndroid Build Coastguard Worker    case vec2_to_bvec3
1445*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1446*35238bceSAndroid Build Coastguard Worker        values {}
1447*35238bceSAndroid Build Coastguard Worker
1448*35238bceSAndroid Build Coastguard Worker        both ""
1449*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1450*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1451*35238bceSAndroid Build Coastguard Worker
1452*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1453*35238bceSAndroid Build Coastguard Worker
1454*35238bceSAndroid Build Coastguard Worker            void main()
1455*35238bceSAndroid Build Coastguard Worker            {
1456*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1457*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1458*35238bceSAndroid Build Coastguard Worker                bvec3 out0 = bvec3(in0);
1459*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1460*35238bceSAndroid Build Coastguard Worker            }
1461*35238bceSAndroid Build Coastguard Worker        ""
1462*35238bceSAndroid Build Coastguard Worker    end
1463*35238bceSAndroid Build Coastguard Worker
1464*35238bceSAndroid Build Coastguard Worker    case vec2_to_vec4
1465*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1466*35238bceSAndroid Build Coastguard Worker        values {}
1467*35238bceSAndroid Build Coastguard Worker
1468*35238bceSAndroid Build Coastguard Worker        both ""
1469*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1470*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1471*35238bceSAndroid Build Coastguard Worker
1472*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1473*35238bceSAndroid Build Coastguard Worker
1474*35238bceSAndroid Build Coastguard Worker            void main()
1475*35238bceSAndroid Build Coastguard Worker            {
1476*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1477*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1478*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1479*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1480*35238bceSAndroid Build Coastguard Worker            }
1481*35238bceSAndroid Build Coastguard Worker        ""
1482*35238bceSAndroid Build Coastguard Worker    end
1483*35238bceSAndroid Build Coastguard Worker
1484*35238bceSAndroid Build Coastguard Worker    case vec2_to_ivec4
1485*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1486*35238bceSAndroid Build Coastguard Worker        values {}
1487*35238bceSAndroid Build Coastguard Worker
1488*35238bceSAndroid Build Coastguard Worker        both ""
1489*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1490*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1491*35238bceSAndroid Build Coastguard Worker
1492*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1493*35238bceSAndroid Build Coastguard Worker
1494*35238bceSAndroid Build Coastguard Worker            void main()
1495*35238bceSAndroid Build Coastguard Worker            {
1496*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1497*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1498*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1499*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1500*35238bceSAndroid Build Coastguard Worker            }
1501*35238bceSAndroid Build Coastguard Worker        ""
1502*35238bceSAndroid Build Coastguard Worker    end
1503*35238bceSAndroid Build Coastguard Worker
1504*35238bceSAndroid Build Coastguard Worker    case vec2_to_bvec4
1505*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1506*35238bceSAndroid Build Coastguard Worker        values {}
1507*35238bceSAndroid Build Coastguard Worker
1508*35238bceSAndroid Build Coastguard Worker        both ""
1509*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1510*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1511*35238bceSAndroid Build Coastguard Worker
1512*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1513*35238bceSAndroid Build Coastguard Worker
1514*35238bceSAndroid Build Coastguard Worker            void main()
1515*35238bceSAndroid Build Coastguard Worker            {
1516*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1517*35238bceSAndroid Build Coastguard Worker                vec2 in0 = vec2(0.0, 0.5);
1518*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1519*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1520*35238bceSAndroid Build Coastguard Worker            }
1521*35238bceSAndroid Build Coastguard Worker        ""
1522*35238bceSAndroid Build Coastguard Worker    end
1523*35238bceSAndroid Build Coastguard Worker
1524*35238bceSAndroid Build Coastguard Worker    case ivec2_to_vec3
1525*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1526*35238bceSAndroid Build Coastguard Worker        values {}
1527*35238bceSAndroid Build Coastguard Worker
1528*35238bceSAndroid Build Coastguard Worker        both ""
1529*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1530*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1531*35238bceSAndroid Build Coastguard Worker
1532*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1533*35238bceSAndroid Build Coastguard Worker
1534*35238bceSAndroid Build Coastguard Worker            void main()
1535*35238bceSAndroid Build Coastguard Worker            {
1536*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1537*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1538*35238bceSAndroid Build Coastguard Worker                vec3 out0 = vec3(in0);
1539*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1540*35238bceSAndroid Build Coastguard Worker            }
1541*35238bceSAndroid Build Coastguard Worker        ""
1542*35238bceSAndroid Build Coastguard Worker    end
1543*35238bceSAndroid Build Coastguard Worker
1544*35238bceSAndroid Build Coastguard Worker    case ivec2_to_ivec3
1545*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1546*35238bceSAndroid Build Coastguard Worker        values {}
1547*35238bceSAndroid Build Coastguard Worker
1548*35238bceSAndroid Build Coastguard Worker        both ""
1549*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1550*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1551*35238bceSAndroid Build Coastguard Worker
1552*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1553*35238bceSAndroid Build Coastguard Worker
1554*35238bceSAndroid Build Coastguard Worker            void main()
1555*35238bceSAndroid Build Coastguard Worker            {
1556*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1557*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1558*35238bceSAndroid Build Coastguard Worker                ivec3 out0 = ivec3(in0);
1559*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1560*35238bceSAndroid Build Coastguard Worker            }
1561*35238bceSAndroid Build Coastguard Worker        ""
1562*35238bceSAndroid Build Coastguard Worker    end
1563*35238bceSAndroid Build Coastguard Worker
1564*35238bceSAndroid Build Coastguard Worker    case ivec2_to_bvec3
1565*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1566*35238bceSAndroid Build Coastguard Worker        values {}
1567*35238bceSAndroid Build Coastguard Worker
1568*35238bceSAndroid Build Coastguard Worker        both ""
1569*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1570*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1571*35238bceSAndroid Build Coastguard Worker
1572*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1573*35238bceSAndroid Build Coastguard Worker
1574*35238bceSAndroid Build Coastguard Worker            void main()
1575*35238bceSAndroid Build Coastguard Worker            {
1576*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1577*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1578*35238bceSAndroid Build Coastguard Worker                bvec3 out0 = bvec3(in0);
1579*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1580*35238bceSAndroid Build Coastguard Worker            }
1581*35238bceSAndroid Build Coastguard Worker        ""
1582*35238bceSAndroid Build Coastguard Worker    end
1583*35238bceSAndroid Build Coastguard Worker
1584*35238bceSAndroid Build Coastguard Worker    case ivec2_to_vec4
1585*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1586*35238bceSAndroid Build Coastguard Worker        values {}
1587*35238bceSAndroid Build Coastguard Worker
1588*35238bceSAndroid Build Coastguard Worker        both ""
1589*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1590*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1591*35238bceSAndroid Build Coastguard Worker
1592*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1593*35238bceSAndroid Build Coastguard Worker
1594*35238bceSAndroid Build Coastguard Worker            void main()
1595*35238bceSAndroid Build Coastguard Worker            {
1596*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1597*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1598*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1599*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1600*35238bceSAndroid Build Coastguard Worker            }
1601*35238bceSAndroid Build Coastguard Worker        ""
1602*35238bceSAndroid Build Coastguard Worker    end
1603*35238bceSAndroid Build Coastguard Worker
1604*35238bceSAndroid Build Coastguard Worker    case ivec2_to_ivec4
1605*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1606*35238bceSAndroid Build Coastguard Worker        values {}
1607*35238bceSAndroid Build Coastguard Worker
1608*35238bceSAndroid Build Coastguard Worker        both ""
1609*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1610*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1611*35238bceSAndroid Build Coastguard Worker
1612*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1613*35238bceSAndroid Build Coastguard Worker
1614*35238bceSAndroid Build Coastguard Worker            void main()
1615*35238bceSAndroid Build Coastguard Worker            {
1616*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1617*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1618*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1619*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1620*35238bceSAndroid Build Coastguard Worker            }
1621*35238bceSAndroid Build Coastguard Worker        ""
1622*35238bceSAndroid Build Coastguard Worker    end
1623*35238bceSAndroid Build Coastguard Worker
1624*35238bceSAndroid Build Coastguard Worker    case ivec2_to_bvec4
1625*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1626*35238bceSAndroid Build Coastguard Worker        values {}
1627*35238bceSAndroid Build Coastguard Worker
1628*35238bceSAndroid Build Coastguard Worker        both ""
1629*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1630*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1631*35238bceSAndroid Build Coastguard Worker
1632*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1633*35238bceSAndroid Build Coastguard Worker
1634*35238bceSAndroid Build Coastguard Worker            void main()
1635*35238bceSAndroid Build Coastguard Worker            {
1636*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1637*35238bceSAndroid Build Coastguard Worker                ivec2 in0 = ivec2(0, 0);
1638*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1639*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1640*35238bceSAndroid Build Coastguard Worker            }
1641*35238bceSAndroid Build Coastguard Worker        ""
1642*35238bceSAndroid Build Coastguard Worker    end
1643*35238bceSAndroid Build Coastguard Worker
1644*35238bceSAndroid Build Coastguard Worker    case bvec2_to_vec3
1645*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1646*35238bceSAndroid Build Coastguard Worker        values {}
1647*35238bceSAndroid Build Coastguard Worker
1648*35238bceSAndroid Build Coastguard Worker        both ""
1649*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1650*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1651*35238bceSAndroid Build Coastguard Worker
1652*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1653*35238bceSAndroid Build Coastguard Worker
1654*35238bceSAndroid Build Coastguard Worker            void main()
1655*35238bceSAndroid Build Coastguard Worker            {
1656*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1657*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1658*35238bceSAndroid Build Coastguard Worker                vec3 out0 = vec3(in0);
1659*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1660*35238bceSAndroid Build Coastguard Worker            }
1661*35238bceSAndroid Build Coastguard Worker        ""
1662*35238bceSAndroid Build Coastguard Worker    end
1663*35238bceSAndroid Build Coastguard Worker
1664*35238bceSAndroid Build Coastguard Worker    case bvec2_to_ivec3
1665*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1666*35238bceSAndroid Build Coastguard Worker        values {}
1667*35238bceSAndroid Build Coastguard Worker
1668*35238bceSAndroid Build Coastguard Worker        both ""
1669*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1670*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1671*35238bceSAndroid Build Coastguard Worker
1672*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1673*35238bceSAndroid Build Coastguard Worker
1674*35238bceSAndroid Build Coastguard Worker            void main()
1675*35238bceSAndroid Build Coastguard Worker            {
1676*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1677*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1678*35238bceSAndroid Build Coastguard Worker                ivec3 out0 = ivec3(in0);
1679*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1680*35238bceSAndroid Build Coastguard Worker            }
1681*35238bceSAndroid Build Coastguard Worker        ""
1682*35238bceSAndroid Build Coastguard Worker    end
1683*35238bceSAndroid Build Coastguard Worker
1684*35238bceSAndroid Build Coastguard Worker    case bvec2_to_bvec3
1685*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1686*35238bceSAndroid Build Coastguard Worker        values {}
1687*35238bceSAndroid Build Coastguard Worker
1688*35238bceSAndroid Build Coastguard Worker        both ""
1689*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1690*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1691*35238bceSAndroid Build Coastguard Worker
1692*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1693*35238bceSAndroid Build Coastguard Worker
1694*35238bceSAndroid Build Coastguard Worker            void main()
1695*35238bceSAndroid Build Coastguard Worker            {
1696*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1697*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1698*35238bceSAndroid Build Coastguard Worker                bvec3 out0 = bvec3(in0);
1699*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1700*35238bceSAndroid Build Coastguard Worker            }
1701*35238bceSAndroid Build Coastguard Worker        ""
1702*35238bceSAndroid Build Coastguard Worker    end
1703*35238bceSAndroid Build Coastguard Worker
1704*35238bceSAndroid Build Coastguard Worker    case bvec2_to_vec4
1705*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1706*35238bceSAndroid Build Coastguard Worker        values {}
1707*35238bceSAndroid Build Coastguard Worker
1708*35238bceSAndroid Build Coastguard Worker        both ""
1709*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1710*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1711*35238bceSAndroid Build Coastguard Worker
1712*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1713*35238bceSAndroid Build Coastguard Worker
1714*35238bceSAndroid Build Coastguard Worker            void main()
1715*35238bceSAndroid Build Coastguard Worker            {
1716*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1717*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1718*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1719*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1720*35238bceSAndroid Build Coastguard Worker            }
1721*35238bceSAndroid Build Coastguard Worker        ""
1722*35238bceSAndroid Build Coastguard Worker    end
1723*35238bceSAndroid Build Coastguard Worker
1724*35238bceSAndroid Build Coastguard Worker    case bvec2_to_ivec4
1725*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1726*35238bceSAndroid Build Coastguard Worker        values {}
1727*35238bceSAndroid Build Coastguard Worker
1728*35238bceSAndroid Build Coastguard Worker        both ""
1729*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1730*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1731*35238bceSAndroid Build Coastguard Worker
1732*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1733*35238bceSAndroid Build Coastguard Worker
1734*35238bceSAndroid Build Coastguard Worker            void main()
1735*35238bceSAndroid Build Coastguard Worker            {
1736*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1737*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1738*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1739*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1740*35238bceSAndroid Build Coastguard Worker            }
1741*35238bceSAndroid Build Coastguard Worker        ""
1742*35238bceSAndroid Build Coastguard Worker    end
1743*35238bceSAndroid Build Coastguard Worker
1744*35238bceSAndroid Build Coastguard Worker    case bvec2_to_bvec4
1745*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1746*35238bceSAndroid Build Coastguard Worker        values {}
1747*35238bceSAndroid Build Coastguard Worker
1748*35238bceSAndroid Build Coastguard Worker        both ""
1749*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1750*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1751*35238bceSAndroid Build Coastguard Worker
1752*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1753*35238bceSAndroid Build Coastguard Worker
1754*35238bceSAndroid Build Coastguard Worker            void main()
1755*35238bceSAndroid Build Coastguard Worker            {
1756*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1757*35238bceSAndroid Build Coastguard Worker                bvec2 in0 = bvec2(true, false);
1758*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1759*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1760*35238bceSAndroid Build Coastguard Worker            }
1761*35238bceSAndroid Build Coastguard Worker        ""
1762*35238bceSAndroid Build Coastguard Worker    end
1763*35238bceSAndroid Build Coastguard Worker
1764*35238bceSAndroid Build Coastguard Worker    case vec3_to_vec4
1765*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1766*35238bceSAndroid Build Coastguard Worker        values {}
1767*35238bceSAndroid Build Coastguard Worker
1768*35238bceSAndroid Build Coastguard Worker        both ""
1769*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1770*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1771*35238bceSAndroid Build Coastguard Worker
1772*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1773*35238bceSAndroid Build Coastguard Worker
1774*35238bceSAndroid Build Coastguard Worker            void main()
1775*35238bceSAndroid Build Coastguard Worker            {
1776*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1777*35238bceSAndroid Build Coastguard Worker                vec3 in0 = vec3(0.0, 0.5, 0.75);
1778*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1779*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1780*35238bceSAndroid Build Coastguard Worker            }
1781*35238bceSAndroid Build Coastguard Worker        ""
1782*35238bceSAndroid Build Coastguard Worker    end
1783*35238bceSAndroid Build Coastguard Worker
1784*35238bceSAndroid Build Coastguard Worker    case vec3_to_ivec4
1785*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1786*35238bceSAndroid Build Coastguard Worker        values {}
1787*35238bceSAndroid Build Coastguard Worker
1788*35238bceSAndroid Build Coastguard Worker        both ""
1789*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1790*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1791*35238bceSAndroid Build Coastguard Worker
1792*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1793*35238bceSAndroid Build Coastguard Worker
1794*35238bceSAndroid Build Coastguard Worker            void main()
1795*35238bceSAndroid Build Coastguard Worker            {
1796*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1797*35238bceSAndroid Build Coastguard Worker                vec3 in0 = vec3(0.0, 0.5, 0.75);
1798*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1799*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1800*35238bceSAndroid Build Coastguard Worker            }
1801*35238bceSAndroid Build Coastguard Worker        ""
1802*35238bceSAndroid Build Coastguard Worker    end
1803*35238bceSAndroid Build Coastguard Worker
1804*35238bceSAndroid Build Coastguard Worker    case vec3_to_bvec4
1805*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1806*35238bceSAndroid Build Coastguard Worker        values {}
1807*35238bceSAndroid Build Coastguard Worker
1808*35238bceSAndroid Build Coastguard Worker        both ""
1809*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1810*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1811*35238bceSAndroid Build Coastguard Worker
1812*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1813*35238bceSAndroid Build Coastguard Worker
1814*35238bceSAndroid Build Coastguard Worker            void main()
1815*35238bceSAndroid Build Coastguard Worker            {
1816*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1817*35238bceSAndroid Build Coastguard Worker                vec3 in0 = vec3(0.0, 0.5, 0.75);
1818*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1819*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1820*35238bceSAndroid Build Coastguard Worker            }
1821*35238bceSAndroid Build Coastguard Worker        ""
1822*35238bceSAndroid Build Coastguard Worker    end
1823*35238bceSAndroid Build Coastguard Worker
1824*35238bceSAndroid Build Coastguard Worker    case ivec3_to_vec4
1825*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1826*35238bceSAndroid Build Coastguard Worker        values {}
1827*35238bceSAndroid Build Coastguard Worker
1828*35238bceSAndroid Build Coastguard Worker        both ""
1829*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1830*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1831*35238bceSAndroid Build Coastguard Worker
1832*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1833*35238bceSAndroid Build Coastguard Worker
1834*35238bceSAndroid Build Coastguard Worker            void main()
1835*35238bceSAndroid Build Coastguard Worker            {
1836*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1837*35238bceSAndroid Build Coastguard Worker                ivec3 in0 = ivec3(0, 0, 0);
1838*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1839*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1840*35238bceSAndroid Build Coastguard Worker            }
1841*35238bceSAndroid Build Coastguard Worker        ""
1842*35238bceSAndroid Build Coastguard Worker    end
1843*35238bceSAndroid Build Coastguard Worker
1844*35238bceSAndroid Build Coastguard Worker    case ivec3_to_ivec4
1845*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1846*35238bceSAndroid Build Coastguard Worker        values {}
1847*35238bceSAndroid Build Coastguard Worker
1848*35238bceSAndroid Build Coastguard Worker        both ""
1849*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1850*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1851*35238bceSAndroid Build Coastguard Worker
1852*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1853*35238bceSAndroid Build Coastguard Worker
1854*35238bceSAndroid Build Coastguard Worker            void main()
1855*35238bceSAndroid Build Coastguard Worker            {
1856*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1857*35238bceSAndroid Build Coastguard Worker                ivec3 in0 = ivec3(0, 0, 0);
1858*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1859*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1860*35238bceSAndroid Build Coastguard Worker            }
1861*35238bceSAndroid Build Coastguard Worker        ""
1862*35238bceSAndroid Build Coastguard Worker    end
1863*35238bceSAndroid Build Coastguard Worker
1864*35238bceSAndroid Build Coastguard Worker    case ivec3_to_bvec4
1865*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1866*35238bceSAndroid Build Coastguard Worker        values {}
1867*35238bceSAndroid Build Coastguard Worker
1868*35238bceSAndroid Build Coastguard Worker        both ""
1869*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1870*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1871*35238bceSAndroid Build Coastguard Worker
1872*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1873*35238bceSAndroid Build Coastguard Worker
1874*35238bceSAndroid Build Coastguard Worker            void main()
1875*35238bceSAndroid Build Coastguard Worker            {
1876*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1877*35238bceSAndroid Build Coastguard Worker                ivec3 in0 = ivec3(0, 0, 0);
1878*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1879*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1880*35238bceSAndroid Build Coastguard Worker            }
1881*35238bceSAndroid Build Coastguard Worker        ""
1882*35238bceSAndroid Build Coastguard Worker    end
1883*35238bceSAndroid Build Coastguard Worker
1884*35238bceSAndroid Build Coastguard Worker    case bvec3_to_vec4
1885*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1886*35238bceSAndroid Build Coastguard Worker        values {}
1887*35238bceSAndroid Build Coastguard Worker
1888*35238bceSAndroid Build Coastguard Worker        both ""
1889*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1890*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1891*35238bceSAndroid Build Coastguard Worker
1892*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1893*35238bceSAndroid Build Coastguard Worker
1894*35238bceSAndroid Build Coastguard Worker            void main()
1895*35238bceSAndroid Build Coastguard Worker            {
1896*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1897*35238bceSAndroid Build Coastguard Worker                bvec3 in0 = bvec3(true, false, false);
1898*35238bceSAndroid Build Coastguard Worker                vec4 out0 = vec4(in0);
1899*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1900*35238bceSAndroid Build Coastguard Worker            }
1901*35238bceSAndroid Build Coastguard Worker        ""
1902*35238bceSAndroid Build Coastguard Worker    end
1903*35238bceSAndroid Build Coastguard Worker
1904*35238bceSAndroid Build Coastguard Worker    case bvec3_to_ivec4
1905*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1906*35238bceSAndroid Build Coastguard Worker        values {}
1907*35238bceSAndroid Build Coastguard Worker
1908*35238bceSAndroid Build Coastguard Worker        both ""
1909*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1910*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1911*35238bceSAndroid Build Coastguard Worker
1912*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1913*35238bceSAndroid Build Coastguard Worker
1914*35238bceSAndroid Build Coastguard Worker            void main()
1915*35238bceSAndroid Build Coastguard Worker            {
1916*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1917*35238bceSAndroid Build Coastguard Worker                bvec3 in0 = bvec3(true, false, false);
1918*35238bceSAndroid Build Coastguard Worker                ivec4 out0 = ivec4(in0);
1919*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1920*35238bceSAndroid Build Coastguard Worker            }
1921*35238bceSAndroid Build Coastguard Worker        ""
1922*35238bceSAndroid Build Coastguard Worker    end
1923*35238bceSAndroid Build Coastguard Worker
1924*35238bceSAndroid Build Coastguard Worker    case bvec3_to_bvec4
1925*35238bceSAndroid Build Coastguard Worker        expect compile_fail
1926*35238bceSAndroid Build Coastguard Worker        values {}
1927*35238bceSAndroid Build Coastguard Worker
1928*35238bceSAndroid Build Coastguard Worker        both ""
1929*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1930*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1931*35238bceSAndroid Build Coastguard Worker
1932*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1933*35238bceSAndroid Build Coastguard Worker
1934*35238bceSAndroid Build Coastguard Worker            void main()
1935*35238bceSAndroid Build Coastguard Worker            {
1936*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1937*35238bceSAndroid Build Coastguard Worker                bvec3 in0 = bvec3(true, false, false);
1938*35238bceSAndroid Build Coastguard Worker                bvec4 out0 = bvec4(in0);
1939*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1940*35238bceSAndroid Build Coastguard Worker            }
1941*35238bceSAndroid Build Coastguard Worker        ""
1942*35238bceSAndroid Build Coastguard Worker    end
1943*35238bceSAndroid Build Coastguard Worker
1944*35238bceSAndroid Build Coastguard Worker
1945*35238bceSAndroid Build Coastguard Workerend # vector_illegal
1946*35238bceSAndroid Build Coastguard Workergroup vector_to_vector "Vector to Vector Conversions"
1947*35238bceSAndroid Build Coastguard Worker
1948*35238bceSAndroid Build Coastguard Worker    case vec4_to_vec4
1949*35238bceSAndroid Build Coastguard Worker        values
1950*35238bceSAndroid Build Coastguard Worker        {
1951*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1952*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1953*35238bceSAndroid Build Coastguard Worker        }
1954*35238bceSAndroid Build Coastguard Worker
1955*35238bceSAndroid Build Coastguard Worker        both ""
1956*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1957*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1958*35238bceSAndroid Build Coastguard Worker
1959*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1960*35238bceSAndroid Build Coastguard Worker
1961*35238bceSAndroid Build Coastguard Worker            void main()
1962*35238bceSAndroid Build Coastguard Worker            {
1963*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1964*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
1965*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1966*35238bceSAndroid Build Coastguard Worker            }
1967*35238bceSAndroid Build Coastguard Worker        ""
1968*35238bceSAndroid Build Coastguard Worker    end
1969*35238bceSAndroid Build Coastguard Worker
1970*35238bceSAndroid Build Coastguard Worker    case vec4_to_vec3
1971*35238bceSAndroid Build Coastguard Worker        values
1972*35238bceSAndroid Build Coastguard Worker        {
1973*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1974*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
1975*35238bceSAndroid Build Coastguard Worker        }
1976*35238bceSAndroid Build Coastguard Worker
1977*35238bceSAndroid Build Coastguard Worker        both ""
1978*35238bceSAndroid Build Coastguard Worker            precision mediump float;
1979*35238bceSAndroid Build Coastguard Worker            precision mediump int;
1980*35238bceSAndroid Build Coastguard Worker
1981*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
1982*35238bceSAndroid Build Coastguard Worker
1983*35238bceSAndroid Build Coastguard Worker            void main()
1984*35238bceSAndroid Build Coastguard Worker            {
1985*35238bceSAndroid Build Coastguard Worker                ${SETUP}
1986*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
1987*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
1988*35238bceSAndroid Build Coastguard Worker            }
1989*35238bceSAndroid Build Coastguard Worker        ""
1990*35238bceSAndroid Build Coastguard Worker    end
1991*35238bceSAndroid Build Coastguard Worker
1992*35238bceSAndroid Build Coastguard Worker    case vec4_to_vec2
1993*35238bceSAndroid Build Coastguard Worker        values
1994*35238bceSAndroid Build Coastguard Worker        {
1995*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
1996*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
1997*35238bceSAndroid Build Coastguard Worker        }
1998*35238bceSAndroid Build Coastguard Worker
1999*35238bceSAndroid Build Coastguard Worker        both ""
2000*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2001*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2002*35238bceSAndroid Build Coastguard Worker
2003*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2004*35238bceSAndroid Build Coastguard Worker
2005*35238bceSAndroid Build Coastguard Worker            void main()
2006*35238bceSAndroid Build Coastguard Worker            {
2007*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2008*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2009*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2010*35238bceSAndroid Build Coastguard Worker            }
2011*35238bceSAndroid Build Coastguard Worker        ""
2012*35238bceSAndroid Build Coastguard Worker    end
2013*35238bceSAndroid Build Coastguard Worker
2014*35238bceSAndroid Build Coastguard Worker    case vec4_to_ivec4
2015*35238bceSAndroid Build Coastguard Worker        values
2016*35238bceSAndroid Build Coastguard Worker        {
2017*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2018*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2019*35238bceSAndroid Build Coastguard Worker        }
2020*35238bceSAndroid Build Coastguard Worker
2021*35238bceSAndroid Build Coastguard Worker        both ""
2022*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2023*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2024*35238bceSAndroid Build Coastguard Worker
2025*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2026*35238bceSAndroid Build Coastguard Worker
2027*35238bceSAndroid Build Coastguard Worker            void main()
2028*35238bceSAndroid Build Coastguard Worker            {
2029*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2030*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
2031*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2032*35238bceSAndroid Build Coastguard Worker            }
2033*35238bceSAndroid Build Coastguard Worker        ""
2034*35238bceSAndroid Build Coastguard Worker    end
2035*35238bceSAndroid Build Coastguard Worker
2036*35238bceSAndroid Build Coastguard Worker    case vec4_to_ivec3
2037*35238bceSAndroid Build Coastguard Worker        values
2038*35238bceSAndroid Build Coastguard Worker        {
2039*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2040*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2041*35238bceSAndroid Build Coastguard Worker        }
2042*35238bceSAndroid Build Coastguard Worker
2043*35238bceSAndroid Build Coastguard Worker        both ""
2044*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2045*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2046*35238bceSAndroid Build Coastguard Worker
2047*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2048*35238bceSAndroid Build Coastguard Worker
2049*35238bceSAndroid Build Coastguard Worker            void main()
2050*35238bceSAndroid Build Coastguard Worker            {
2051*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2052*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2053*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2054*35238bceSAndroid Build Coastguard Worker            }
2055*35238bceSAndroid Build Coastguard Worker        ""
2056*35238bceSAndroid Build Coastguard Worker    end
2057*35238bceSAndroid Build Coastguard Worker
2058*35238bceSAndroid Build Coastguard Worker    case vec4_to_ivec2
2059*35238bceSAndroid Build Coastguard Worker        values
2060*35238bceSAndroid Build Coastguard Worker        {
2061*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2062*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2063*35238bceSAndroid Build Coastguard Worker        }
2064*35238bceSAndroid Build Coastguard Worker
2065*35238bceSAndroid Build Coastguard Worker        both ""
2066*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2067*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2068*35238bceSAndroid Build Coastguard Worker
2069*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2070*35238bceSAndroid Build Coastguard Worker
2071*35238bceSAndroid Build Coastguard Worker            void main()
2072*35238bceSAndroid Build Coastguard Worker            {
2073*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2074*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2075*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2076*35238bceSAndroid Build Coastguard Worker            }
2077*35238bceSAndroid Build Coastguard Worker        ""
2078*35238bceSAndroid Build Coastguard Worker    end
2079*35238bceSAndroid Build Coastguard Worker
2080*35238bceSAndroid Build Coastguard Worker    case vec4_to_bvec4
2081*35238bceSAndroid Build Coastguard Worker        values
2082*35238bceSAndroid Build Coastguard Worker        {
2083*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2084*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(false, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) ];
2085*35238bceSAndroid Build Coastguard Worker        }
2086*35238bceSAndroid Build Coastguard Worker
2087*35238bceSAndroid Build Coastguard Worker        both ""
2088*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2089*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2090*35238bceSAndroid Build Coastguard Worker
2091*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2092*35238bceSAndroid Build Coastguard Worker
2093*35238bceSAndroid Build Coastguard Worker            void main()
2094*35238bceSAndroid Build Coastguard Worker            {
2095*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2096*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
2097*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2098*35238bceSAndroid Build Coastguard Worker            }
2099*35238bceSAndroid Build Coastguard Worker        ""
2100*35238bceSAndroid Build Coastguard Worker    end
2101*35238bceSAndroid Build Coastguard Worker
2102*35238bceSAndroid Build Coastguard Worker    case vec4_to_bvec3
2103*35238bceSAndroid Build Coastguard Worker        values
2104*35238bceSAndroid Build Coastguard Worker        {
2105*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2106*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) ];
2107*35238bceSAndroid Build Coastguard Worker        }
2108*35238bceSAndroid Build Coastguard Worker
2109*35238bceSAndroid Build Coastguard Worker        both ""
2110*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2111*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2112*35238bceSAndroid Build Coastguard Worker
2113*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2114*35238bceSAndroid Build Coastguard Worker
2115*35238bceSAndroid Build Coastguard Worker            void main()
2116*35238bceSAndroid Build Coastguard Worker            {
2117*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2118*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2119*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2120*35238bceSAndroid Build Coastguard Worker            }
2121*35238bceSAndroid Build Coastguard Worker        ""
2122*35238bceSAndroid Build Coastguard Worker    end
2123*35238bceSAndroid Build Coastguard Worker
2124*35238bceSAndroid Build Coastguard Worker    case vec4_to_bvec2
2125*35238bceSAndroid Build Coastguard Worker        values
2126*35238bceSAndroid Build Coastguard Worker        {
2127*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(0.0, 0.5, 0.75, 0.825) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) ];
2128*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) ];
2129*35238bceSAndroid Build Coastguard Worker        }
2130*35238bceSAndroid Build Coastguard Worker
2131*35238bceSAndroid Build Coastguard Worker        both ""
2132*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2133*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2134*35238bceSAndroid Build Coastguard Worker
2135*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2136*35238bceSAndroid Build Coastguard Worker
2137*35238bceSAndroid Build Coastguard Worker            void main()
2138*35238bceSAndroid Build Coastguard Worker            {
2139*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2140*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2141*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2142*35238bceSAndroid Build Coastguard Worker            }
2143*35238bceSAndroid Build Coastguard Worker        ""
2144*35238bceSAndroid Build Coastguard Worker    end
2145*35238bceSAndroid Build Coastguard Worker
2146*35238bceSAndroid Build Coastguard Worker    case ivec4_to_vec4
2147*35238bceSAndroid Build Coastguard Worker        values
2148*35238bceSAndroid Build Coastguard Worker        {
2149*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2150*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(0.0, -2.0, -4.0, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(0.0, 0.0, 0.0, 0.0) ];
2151*35238bceSAndroid Build Coastguard Worker        }
2152*35238bceSAndroid Build Coastguard Worker
2153*35238bceSAndroid Build Coastguard Worker        both ""
2154*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2155*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2156*35238bceSAndroid Build Coastguard Worker
2157*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2158*35238bceSAndroid Build Coastguard Worker
2159*35238bceSAndroid Build Coastguard Worker            void main()
2160*35238bceSAndroid Build Coastguard Worker            {
2161*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2162*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
2163*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2164*35238bceSAndroid Build Coastguard Worker            }
2165*35238bceSAndroid Build Coastguard Worker        ""
2166*35238bceSAndroid Build Coastguard Worker    end
2167*35238bceSAndroid Build Coastguard Worker
2168*35238bceSAndroid Build Coastguard Worker    case ivec4_to_vec3
2169*35238bceSAndroid Build Coastguard Worker        values
2170*35238bceSAndroid Build Coastguard Worker        {
2171*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2172*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(0.0, -2.0, -4.0) | vec3(-32.0, 64.0, -51.0) | vec3(0.0, 0.0, 0.0) ];
2173*35238bceSAndroid Build Coastguard Worker        }
2174*35238bceSAndroid Build Coastguard Worker
2175*35238bceSAndroid Build Coastguard Worker        both ""
2176*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2177*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2178*35238bceSAndroid Build Coastguard Worker
2179*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2180*35238bceSAndroid Build Coastguard Worker
2181*35238bceSAndroid Build Coastguard Worker            void main()
2182*35238bceSAndroid Build Coastguard Worker            {
2183*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2184*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
2185*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2186*35238bceSAndroid Build Coastguard Worker            }
2187*35238bceSAndroid Build Coastguard Worker        ""
2188*35238bceSAndroid Build Coastguard Worker    end
2189*35238bceSAndroid Build Coastguard Worker
2190*35238bceSAndroid Build Coastguard Worker    case ivec4_to_vec2
2191*35238bceSAndroid Build Coastguard Worker        values
2192*35238bceSAndroid Build Coastguard Worker        {
2193*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2194*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(0.0, -2.0) | vec2(-32.0, 64.0) | vec2(0.0, 0.0) ];
2195*35238bceSAndroid Build Coastguard Worker        }
2196*35238bceSAndroid Build Coastguard Worker
2197*35238bceSAndroid Build Coastguard Worker        both ""
2198*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2199*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2200*35238bceSAndroid Build Coastguard Worker
2201*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2202*35238bceSAndroid Build Coastguard Worker
2203*35238bceSAndroid Build Coastguard Worker            void main()
2204*35238bceSAndroid Build Coastguard Worker            {
2205*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2206*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2207*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2208*35238bceSAndroid Build Coastguard Worker            }
2209*35238bceSAndroid Build Coastguard Worker        ""
2210*35238bceSAndroid Build Coastguard Worker    end
2211*35238bceSAndroid Build Coastguard Worker
2212*35238bceSAndroid Build Coastguard Worker    case ivec4_to_ivec4
2213*35238bceSAndroid Build Coastguard Worker        values
2214*35238bceSAndroid Build Coastguard Worker        {
2215*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2216*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2217*35238bceSAndroid Build Coastguard Worker        }
2218*35238bceSAndroid Build Coastguard Worker
2219*35238bceSAndroid Build Coastguard Worker        both ""
2220*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2221*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2222*35238bceSAndroid Build Coastguard Worker
2223*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2224*35238bceSAndroid Build Coastguard Worker
2225*35238bceSAndroid Build Coastguard Worker            void main()
2226*35238bceSAndroid Build Coastguard Worker            {
2227*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2228*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
2229*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2230*35238bceSAndroid Build Coastguard Worker            }
2231*35238bceSAndroid Build Coastguard Worker        ""
2232*35238bceSAndroid Build Coastguard Worker    end
2233*35238bceSAndroid Build Coastguard Worker
2234*35238bceSAndroid Build Coastguard Worker    case ivec4_to_ivec3
2235*35238bceSAndroid Build Coastguard Worker        values
2236*35238bceSAndroid Build Coastguard Worker        {
2237*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2238*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2239*35238bceSAndroid Build Coastguard Worker        }
2240*35238bceSAndroid Build Coastguard Worker
2241*35238bceSAndroid Build Coastguard Worker        both ""
2242*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2243*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2244*35238bceSAndroid Build Coastguard Worker
2245*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2246*35238bceSAndroid Build Coastguard Worker
2247*35238bceSAndroid Build Coastguard Worker            void main()
2248*35238bceSAndroid Build Coastguard Worker            {
2249*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2250*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2251*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2252*35238bceSAndroid Build Coastguard Worker            }
2253*35238bceSAndroid Build Coastguard Worker        ""
2254*35238bceSAndroid Build Coastguard Worker    end
2255*35238bceSAndroid Build Coastguard Worker
2256*35238bceSAndroid Build Coastguard Worker    case ivec4_to_ivec2
2257*35238bceSAndroid Build Coastguard Worker        values
2258*35238bceSAndroid Build Coastguard Worker        {
2259*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2260*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2261*35238bceSAndroid Build Coastguard Worker        }
2262*35238bceSAndroid Build Coastguard Worker
2263*35238bceSAndroid Build Coastguard Worker        both ""
2264*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2265*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2266*35238bceSAndroid Build Coastguard Worker
2267*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2268*35238bceSAndroid Build Coastguard Worker
2269*35238bceSAndroid Build Coastguard Worker            void main()
2270*35238bceSAndroid Build Coastguard Worker            {
2271*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2272*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2273*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2274*35238bceSAndroid Build Coastguard Worker            }
2275*35238bceSAndroid Build Coastguard Worker        ""
2276*35238bceSAndroid Build Coastguard Worker    end
2277*35238bceSAndroid Build Coastguard Worker
2278*35238bceSAndroid Build Coastguard Worker    case ivec4_to_bvec4
2279*35238bceSAndroid Build Coastguard Worker        values
2280*35238bceSAndroid Build Coastguard Worker        {
2281*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2282*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(false, true, true, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2283*35238bceSAndroid Build Coastguard Worker        }
2284*35238bceSAndroid Build Coastguard Worker
2285*35238bceSAndroid Build Coastguard Worker        both ""
2286*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2287*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2288*35238bceSAndroid Build Coastguard Worker
2289*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2290*35238bceSAndroid Build Coastguard Worker
2291*35238bceSAndroid Build Coastguard Worker            void main()
2292*35238bceSAndroid Build Coastguard Worker            {
2293*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2294*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
2295*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2296*35238bceSAndroid Build Coastguard Worker            }
2297*35238bceSAndroid Build Coastguard Worker        ""
2298*35238bceSAndroid Build Coastguard Worker    end
2299*35238bceSAndroid Build Coastguard Worker
2300*35238bceSAndroid Build Coastguard Worker    case ivec4_to_bvec3
2301*35238bceSAndroid Build Coastguard Worker        values
2302*35238bceSAndroid Build Coastguard Worker        {
2303*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2304*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
2305*35238bceSAndroid Build Coastguard Worker        }
2306*35238bceSAndroid Build Coastguard Worker
2307*35238bceSAndroid Build Coastguard Worker        both ""
2308*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2309*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2310*35238bceSAndroid Build Coastguard Worker
2311*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2312*35238bceSAndroid Build Coastguard Worker
2313*35238bceSAndroid Build Coastguard Worker            void main()
2314*35238bceSAndroid Build Coastguard Worker            {
2315*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2316*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2317*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2318*35238bceSAndroid Build Coastguard Worker            }
2319*35238bceSAndroid Build Coastguard Worker        ""
2320*35238bceSAndroid Build Coastguard Worker    end
2321*35238bceSAndroid Build Coastguard Worker
2322*35238bceSAndroid Build Coastguard Worker    case ivec4_to_bvec2
2323*35238bceSAndroid Build Coastguard Worker        values
2324*35238bceSAndroid Build Coastguard Worker        {
2325*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
2326*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, false) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
2327*35238bceSAndroid Build Coastguard Worker        }
2328*35238bceSAndroid Build Coastguard Worker
2329*35238bceSAndroid Build Coastguard Worker        both ""
2330*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2331*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2332*35238bceSAndroid Build Coastguard Worker
2333*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2334*35238bceSAndroid Build Coastguard Worker
2335*35238bceSAndroid Build Coastguard Worker            void main()
2336*35238bceSAndroid Build Coastguard Worker            {
2337*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2338*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2339*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2340*35238bceSAndroid Build Coastguard Worker            }
2341*35238bceSAndroid Build Coastguard Worker        ""
2342*35238bceSAndroid Build Coastguard Worker    end
2343*35238bceSAndroid Build Coastguard Worker
2344*35238bceSAndroid Build Coastguard Worker    case bvec4_to_vec4
2345*35238bceSAndroid Build Coastguard Worker        values
2346*35238bceSAndroid Build Coastguard Worker        {
2347*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2348*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 0.0, 0.0, 1.0) | vec4(0.0, 0.0, 0.0, 1.0) | vec4(0.0, 1.0, 0.0, 0.0) | vec4(1.0, 1.0, 1.0, 1.0) | vec4(0.0, 0.0, 0.0, 0.0) ];
2349*35238bceSAndroid Build Coastguard Worker        }
2350*35238bceSAndroid Build Coastguard Worker
2351*35238bceSAndroid Build Coastguard Worker        both ""
2352*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2353*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2354*35238bceSAndroid Build Coastguard Worker
2355*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2356*35238bceSAndroid Build Coastguard Worker
2357*35238bceSAndroid Build Coastguard Worker            void main()
2358*35238bceSAndroid Build Coastguard Worker            {
2359*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2360*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0);
2361*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2362*35238bceSAndroid Build Coastguard Worker            }
2363*35238bceSAndroid Build Coastguard Worker        ""
2364*35238bceSAndroid Build Coastguard Worker    end
2365*35238bceSAndroid Build Coastguard Worker
2366*35238bceSAndroid Build Coastguard Worker    case bvec4_to_vec3
2367*35238bceSAndroid Build Coastguard Worker        values
2368*35238bceSAndroid Build Coastguard Worker        {
2369*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2370*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(1.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 1.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(0.0, 0.0, 0.0) ];
2371*35238bceSAndroid Build Coastguard Worker        }
2372*35238bceSAndroid Build Coastguard Worker
2373*35238bceSAndroid Build Coastguard Worker        both ""
2374*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2375*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2376*35238bceSAndroid Build Coastguard Worker
2377*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2378*35238bceSAndroid Build Coastguard Worker
2379*35238bceSAndroid Build Coastguard Worker            void main()
2380*35238bceSAndroid Build Coastguard Worker            {
2381*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2382*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
2383*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2384*35238bceSAndroid Build Coastguard Worker            }
2385*35238bceSAndroid Build Coastguard Worker        ""
2386*35238bceSAndroid Build Coastguard Worker    end
2387*35238bceSAndroid Build Coastguard Worker
2388*35238bceSAndroid Build Coastguard Worker    case bvec4_to_vec2
2389*35238bceSAndroid Build Coastguard Worker        values
2390*35238bceSAndroid Build Coastguard Worker        {
2391*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2392*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 1.0) | vec2(1.0, 1.0) | vec2(0.0, 0.0) ];
2393*35238bceSAndroid Build Coastguard Worker        }
2394*35238bceSAndroid Build Coastguard Worker
2395*35238bceSAndroid Build Coastguard Worker        both ""
2396*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2397*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2398*35238bceSAndroid Build Coastguard Worker
2399*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2400*35238bceSAndroid Build Coastguard Worker
2401*35238bceSAndroid Build Coastguard Worker            void main()
2402*35238bceSAndroid Build Coastguard Worker            {
2403*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2404*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2405*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2406*35238bceSAndroid Build Coastguard Worker            }
2407*35238bceSAndroid Build Coastguard Worker        ""
2408*35238bceSAndroid Build Coastguard Worker    end
2409*35238bceSAndroid Build Coastguard Worker
2410*35238bceSAndroid Build Coastguard Worker    case bvec4_to_ivec4
2411*35238bceSAndroid Build Coastguard Worker        values
2412*35238bceSAndroid Build Coastguard Worker        {
2413*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2414*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 0, 0, 1) | ivec4(0, 0, 0, 1) | ivec4(0, 1, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) ];
2415*35238bceSAndroid Build Coastguard Worker        }
2416*35238bceSAndroid Build Coastguard Worker
2417*35238bceSAndroid Build Coastguard Worker        both ""
2418*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2419*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2420*35238bceSAndroid Build Coastguard Worker
2421*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2422*35238bceSAndroid Build Coastguard Worker
2423*35238bceSAndroid Build Coastguard Worker            void main()
2424*35238bceSAndroid Build Coastguard Worker            {
2425*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2426*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0);
2427*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2428*35238bceSAndroid Build Coastguard Worker            }
2429*35238bceSAndroid Build Coastguard Worker        ""
2430*35238bceSAndroid Build Coastguard Worker    end
2431*35238bceSAndroid Build Coastguard Worker
2432*35238bceSAndroid Build Coastguard Worker    case bvec4_to_ivec3
2433*35238bceSAndroid Build Coastguard Worker        values
2434*35238bceSAndroid Build Coastguard Worker        {
2435*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2436*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(1, 0, 0) | ivec3(0, 0, 0) | ivec3(0, 1, 0) | ivec3(1, 1, 1) | ivec3(0, 0, 0) ];
2437*35238bceSAndroid Build Coastguard Worker        }
2438*35238bceSAndroid Build Coastguard Worker
2439*35238bceSAndroid Build Coastguard Worker        both ""
2440*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2441*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2442*35238bceSAndroid Build Coastguard Worker
2443*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2444*35238bceSAndroid Build Coastguard Worker
2445*35238bceSAndroid Build Coastguard Worker            void main()
2446*35238bceSAndroid Build Coastguard Worker            {
2447*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2448*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2449*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2450*35238bceSAndroid Build Coastguard Worker            }
2451*35238bceSAndroid Build Coastguard Worker        ""
2452*35238bceSAndroid Build Coastguard Worker    end
2453*35238bceSAndroid Build Coastguard Worker
2454*35238bceSAndroid Build Coastguard Worker    case bvec4_to_ivec2
2455*35238bceSAndroid Build Coastguard Worker        values
2456*35238bceSAndroid Build Coastguard Worker        {
2457*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2458*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, 0) | ivec2(0, 0) | ivec2(0, 1) | ivec2(1, 1) | ivec2(0, 0) ];
2459*35238bceSAndroid Build Coastguard Worker        }
2460*35238bceSAndroid Build Coastguard Worker
2461*35238bceSAndroid Build Coastguard Worker        both ""
2462*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2463*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2464*35238bceSAndroid Build Coastguard Worker
2465*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2466*35238bceSAndroid Build Coastguard Worker
2467*35238bceSAndroid Build Coastguard Worker            void main()
2468*35238bceSAndroid Build Coastguard Worker            {
2469*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2470*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2471*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2472*35238bceSAndroid Build Coastguard Worker            }
2473*35238bceSAndroid Build Coastguard Worker        ""
2474*35238bceSAndroid Build Coastguard Worker    end
2475*35238bceSAndroid Build Coastguard Worker
2476*35238bceSAndroid Build Coastguard Worker    case bvec4_to_bvec4
2477*35238bceSAndroid Build Coastguard Worker        values
2478*35238bceSAndroid Build Coastguard Worker        {
2479*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2480*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2481*35238bceSAndroid Build Coastguard Worker        }
2482*35238bceSAndroid Build Coastguard Worker
2483*35238bceSAndroid Build Coastguard Worker        both ""
2484*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2485*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2486*35238bceSAndroid Build Coastguard Worker
2487*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2488*35238bceSAndroid Build Coastguard Worker
2489*35238bceSAndroid Build Coastguard Worker            void main()
2490*35238bceSAndroid Build Coastguard Worker            {
2491*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2492*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0);
2493*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2494*35238bceSAndroid Build Coastguard Worker            }
2495*35238bceSAndroid Build Coastguard Worker        ""
2496*35238bceSAndroid Build Coastguard Worker    end
2497*35238bceSAndroid Build Coastguard Worker
2498*35238bceSAndroid Build Coastguard Worker    case bvec4_to_bvec3
2499*35238bceSAndroid Build Coastguard Worker        values
2500*35238bceSAndroid Build Coastguard Worker        {
2501*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2502*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2503*35238bceSAndroid Build Coastguard Worker        }
2504*35238bceSAndroid Build Coastguard Worker
2505*35238bceSAndroid Build Coastguard Worker        both ""
2506*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2507*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2508*35238bceSAndroid Build Coastguard Worker
2509*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2510*35238bceSAndroid Build Coastguard Worker
2511*35238bceSAndroid Build Coastguard Worker            void main()
2512*35238bceSAndroid Build Coastguard Worker            {
2513*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2514*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2515*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2516*35238bceSAndroid Build Coastguard Worker            }
2517*35238bceSAndroid Build Coastguard Worker        ""
2518*35238bceSAndroid Build Coastguard Worker    end
2519*35238bceSAndroid Build Coastguard Worker
2520*35238bceSAndroid Build Coastguard Worker    case bvec4_to_bvec2
2521*35238bceSAndroid Build Coastguard Worker        values
2522*35238bceSAndroid Build Coastguard Worker        {
2523*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, false) ];
2524*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
2525*35238bceSAndroid Build Coastguard Worker        }
2526*35238bceSAndroid Build Coastguard Worker
2527*35238bceSAndroid Build Coastguard Worker        both ""
2528*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2529*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2530*35238bceSAndroid Build Coastguard Worker
2531*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2532*35238bceSAndroid Build Coastguard Worker
2533*35238bceSAndroid Build Coastguard Worker            void main()
2534*35238bceSAndroid Build Coastguard Worker            {
2535*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2536*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2537*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2538*35238bceSAndroid Build Coastguard Worker            }
2539*35238bceSAndroid Build Coastguard Worker        ""
2540*35238bceSAndroid Build Coastguard Worker    end
2541*35238bceSAndroid Build Coastguard Worker
2542*35238bceSAndroid Build Coastguard Worker    case vec3_to_vec3
2543*35238bceSAndroid Build Coastguard Worker        values
2544*35238bceSAndroid Build Coastguard Worker        {
2545*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2546*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2547*35238bceSAndroid Build Coastguard Worker        }
2548*35238bceSAndroid Build Coastguard Worker
2549*35238bceSAndroid Build Coastguard Worker        both ""
2550*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2551*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2552*35238bceSAndroid Build Coastguard Worker
2553*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2554*35238bceSAndroid Build Coastguard Worker
2555*35238bceSAndroid Build Coastguard Worker            void main()
2556*35238bceSAndroid Build Coastguard Worker            {
2557*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2558*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
2559*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2560*35238bceSAndroid Build Coastguard Worker            }
2561*35238bceSAndroid Build Coastguard Worker        ""
2562*35238bceSAndroid Build Coastguard Worker    end
2563*35238bceSAndroid Build Coastguard Worker
2564*35238bceSAndroid Build Coastguard Worker    case vec3_to_vec2
2565*35238bceSAndroid Build Coastguard Worker        values
2566*35238bceSAndroid Build Coastguard Worker        {
2567*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2568*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
2569*35238bceSAndroid Build Coastguard Worker        }
2570*35238bceSAndroid Build Coastguard Worker
2571*35238bceSAndroid Build Coastguard Worker        both ""
2572*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2573*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2574*35238bceSAndroid Build Coastguard Worker
2575*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2576*35238bceSAndroid Build Coastguard Worker
2577*35238bceSAndroid Build Coastguard Worker            void main()
2578*35238bceSAndroid Build Coastguard Worker            {
2579*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2580*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2581*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2582*35238bceSAndroid Build Coastguard Worker            }
2583*35238bceSAndroid Build Coastguard Worker        ""
2584*35238bceSAndroid Build Coastguard Worker    end
2585*35238bceSAndroid Build Coastguard Worker
2586*35238bceSAndroid Build Coastguard Worker    case vec3_to_ivec3
2587*35238bceSAndroid Build Coastguard Worker        values
2588*35238bceSAndroid Build Coastguard Worker        {
2589*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2590*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2591*35238bceSAndroid Build Coastguard Worker        }
2592*35238bceSAndroid Build Coastguard Worker
2593*35238bceSAndroid Build Coastguard Worker        both ""
2594*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2595*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2596*35238bceSAndroid Build Coastguard Worker
2597*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2598*35238bceSAndroid Build Coastguard Worker
2599*35238bceSAndroid Build Coastguard Worker            void main()
2600*35238bceSAndroid Build Coastguard Worker            {
2601*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2602*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2603*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2604*35238bceSAndroid Build Coastguard Worker            }
2605*35238bceSAndroid Build Coastguard Worker        ""
2606*35238bceSAndroid Build Coastguard Worker    end
2607*35238bceSAndroid Build Coastguard Worker
2608*35238bceSAndroid Build Coastguard Worker    case vec3_to_ivec2
2609*35238bceSAndroid Build Coastguard Worker        values
2610*35238bceSAndroid Build Coastguard Worker        {
2611*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2612*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2613*35238bceSAndroid Build Coastguard Worker        }
2614*35238bceSAndroid Build Coastguard Worker
2615*35238bceSAndroid Build Coastguard Worker        both ""
2616*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2617*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2618*35238bceSAndroid Build Coastguard Worker
2619*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2620*35238bceSAndroid Build Coastguard Worker
2621*35238bceSAndroid Build Coastguard Worker            void main()
2622*35238bceSAndroid Build Coastguard Worker            {
2623*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2624*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2625*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2626*35238bceSAndroid Build Coastguard Worker            }
2627*35238bceSAndroid Build Coastguard Worker        ""
2628*35238bceSAndroid Build Coastguard Worker    end
2629*35238bceSAndroid Build Coastguard Worker
2630*35238bceSAndroid Build Coastguard Worker    case vec3_to_bvec3
2631*35238bceSAndroid Build Coastguard Worker        values
2632*35238bceSAndroid Build Coastguard Worker        {
2633*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2634*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) ];
2635*35238bceSAndroid Build Coastguard Worker        }
2636*35238bceSAndroid Build Coastguard Worker
2637*35238bceSAndroid Build Coastguard Worker        both ""
2638*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2639*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2640*35238bceSAndroid Build Coastguard Worker
2641*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2642*35238bceSAndroid Build Coastguard Worker
2643*35238bceSAndroid Build Coastguard Worker            void main()
2644*35238bceSAndroid Build Coastguard Worker            {
2645*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2646*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2647*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2648*35238bceSAndroid Build Coastguard Worker            }
2649*35238bceSAndroid Build Coastguard Worker        ""
2650*35238bceSAndroid Build Coastguard Worker    end
2651*35238bceSAndroid Build Coastguard Worker
2652*35238bceSAndroid Build Coastguard Worker    case vec3_to_bvec2
2653*35238bceSAndroid Build Coastguard Worker        values
2654*35238bceSAndroid Build Coastguard Worker        {
2655*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(-0.75, -0.0322580645161, 0.0526315789474) ];
2656*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) ];
2657*35238bceSAndroid Build Coastguard Worker        }
2658*35238bceSAndroid Build Coastguard Worker
2659*35238bceSAndroid Build Coastguard Worker        both ""
2660*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2661*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2662*35238bceSAndroid Build Coastguard Worker
2663*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2664*35238bceSAndroid Build Coastguard Worker
2665*35238bceSAndroid Build Coastguard Worker            void main()
2666*35238bceSAndroid Build Coastguard Worker            {
2667*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2668*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2669*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2670*35238bceSAndroid Build Coastguard Worker            }
2671*35238bceSAndroid Build Coastguard Worker        ""
2672*35238bceSAndroid Build Coastguard Worker    end
2673*35238bceSAndroid Build Coastguard Worker
2674*35238bceSAndroid Build Coastguard Worker    case ivec3_to_vec3
2675*35238bceSAndroid Build Coastguard Worker        values
2676*35238bceSAndroid Build Coastguard Worker        {
2677*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2678*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(0.0, -2.0, -4.0) | vec3(-32.0, 64.0, -51.0) | vec3(0.0, 0.0, 0.0) ];
2679*35238bceSAndroid Build Coastguard Worker        }
2680*35238bceSAndroid Build Coastguard Worker
2681*35238bceSAndroid Build Coastguard Worker        both ""
2682*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2683*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2684*35238bceSAndroid Build Coastguard Worker
2685*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2686*35238bceSAndroid Build Coastguard Worker
2687*35238bceSAndroid Build Coastguard Worker            void main()
2688*35238bceSAndroid Build Coastguard Worker            {
2689*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2690*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
2691*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2692*35238bceSAndroid Build Coastguard Worker            }
2693*35238bceSAndroid Build Coastguard Worker        ""
2694*35238bceSAndroid Build Coastguard Worker    end
2695*35238bceSAndroid Build Coastguard Worker
2696*35238bceSAndroid Build Coastguard Worker    case ivec3_to_vec2
2697*35238bceSAndroid Build Coastguard Worker        values
2698*35238bceSAndroid Build Coastguard Worker        {
2699*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2700*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(0.0, -2.0) | vec2(-32.0, 64.0) | vec2(0.0, 0.0) ];
2701*35238bceSAndroid Build Coastguard Worker        }
2702*35238bceSAndroid Build Coastguard Worker
2703*35238bceSAndroid Build Coastguard Worker        both ""
2704*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2705*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2706*35238bceSAndroid Build Coastguard Worker
2707*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2708*35238bceSAndroid Build Coastguard Worker
2709*35238bceSAndroid Build Coastguard Worker            void main()
2710*35238bceSAndroid Build Coastguard Worker            {
2711*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2712*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2713*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2714*35238bceSAndroid Build Coastguard Worker            }
2715*35238bceSAndroid Build Coastguard Worker        ""
2716*35238bceSAndroid Build Coastguard Worker    end
2717*35238bceSAndroid Build Coastguard Worker
2718*35238bceSAndroid Build Coastguard Worker    case ivec3_to_ivec3
2719*35238bceSAndroid Build Coastguard Worker        values
2720*35238bceSAndroid Build Coastguard Worker        {
2721*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2722*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2723*35238bceSAndroid Build Coastguard Worker        }
2724*35238bceSAndroid Build Coastguard Worker
2725*35238bceSAndroid Build Coastguard Worker        both ""
2726*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2727*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2728*35238bceSAndroid Build Coastguard Worker
2729*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2730*35238bceSAndroid Build Coastguard Worker
2731*35238bceSAndroid Build Coastguard Worker            void main()
2732*35238bceSAndroid Build Coastguard Worker            {
2733*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2734*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2735*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2736*35238bceSAndroid Build Coastguard Worker            }
2737*35238bceSAndroid Build Coastguard Worker        ""
2738*35238bceSAndroid Build Coastguard Worker    end
2739*35238bceSAndroid Build Coastguard Worker
2740*35238bceSAndroid Build Coastguard Worker    case ivec3_to_ivec2
2741*35238bceSAndroid Build Coastguard Worker        values
2742*35238bceSAndroid Build Coastguard Worker        {
2743*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2744*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2745*35238bceSAndroid Build Coastguard Worker        }
2746*35238bceSAndroid Build Coastguard Worker
2747*35238bceSAndroid Build Coastguard Worker        both ""
2748*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2749*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2750*35238bceSAndroid Build Coastguard Worker
2751*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2752*35238bceSAndroid Build Coastguard Worker
2753*35238bceSAndroid Build Coastguard Worker            void main()
2754*35238bceSAndroid Build Coastguard Worker            {
2755*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2756*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2757*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2758*35238bceSAndroid Build Coastguard Worker            }
2759*35238bceSAndroid Build Coastguard Worker        ""
2760*35238bceSAndroid Build Coastguard Worker    end
2761*35238bceSAndroid Build Coastguard Worker
2762*35238bceSAndroid Build Coastguard Worker    case ivec3_to_bvec3
2763*35238bceSAndroid Build Coastguard Worker        values
2764*35238bceSAndroid Build Coastguard Worker        {
2765*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2766*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, true) | bvec3(false, false, false) ];
2767*35238bceSAndroid Build Coastguard Worker        }
2768*35238bceSAndroid Build Coastguard Worker
2769*35238bceSAndroid Build Coastguard Worker        both ""
2770*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2771*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2772*35238bceSAndroid Build Coastguard Worker
2773*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2774*35238bceSAndroid Build Coastguard Worker
2775*35238bceSAndroid Build Coastguard Worker            void main()
2776*35238bceSAndroid Build Coastguard Worker            {
2777*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2778*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2779*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2780*35238bceSAndroid Build Coastguard Worker            }
2781*35238bceSAndroid Build Coastguard Worker        ""
2782*35238bceSAndroid Build Coastguard Worker    end
2783*35238bceSAndroid Build Coastguard Worker
2784*35238bceSAndroid Build Coastguard Worker    case ivec3_to_bvec2
2785*35238bceSAndroid Build Coastguard Worker        values
2786*35238bceSAndroid Build Coastguard Worker        {
2787*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
2788*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, false) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
2789*35238bceSAndroid Build Coastguard Worker        }
2790*35238bceSAndroid Build Coastguard Worker
2791*35238bceSAndroid Build Coastguard Worker        both ""
2792*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2793*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2794*35238bceSAndroid Build Coastguard Worker
2795*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2796*35238bceSAndroid Build Coastguard Worker
2797*35238bceSAndroid Build Coastguard Worker            void main()
2798*35238bceSAndroid Build Coastguard Worker            {
2799*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2800*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2801*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2802*35238bceSAndroid Build Coastguard Worker            }
2803*35238bceSAndroid Build Coastguard Worker        ""
2804*35238bceSAndroid Build Coastguard Worker    end
2805*35238bceSAndroid Build Coastguard Worker
2806*35238bceSAndroid Build Coastguard Worker    case bvec3_to_vec3
2807*35238bceSAndroid Build Coastguard Worker        values
2808*35238bceSAndroid Build Coastguard Worker        {
2809*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2810*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(1.0, 0.0, 0.0) | vec3(0.0, 0.0, 0.0) | vec3(0.0, 1.0, 0.0) | vec3(1.0, 1.0, 1.0) | vec3(0.0, 0.0, 0.0) ];
2811*35238bceSAndroid Build Coastguard Worker        }
2812*35238bceSAndroid Build Coastguard Worker
2813*35238bceSAndroid Build Coastguard Worker        both ""
2814*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2815*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2816*35238bceSAndroid Build Coastguard Worker
2817*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2818*35238bceSAndroid Build Coastguard Worker
2819*35238bceSAndroid Build Coastguard Worker            void main()
2820*35238bceSAndroid Build Coastguard Worker            {
2821*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2822*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0);
2823*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2824*35238bceSAndroid Build Coastguard Worker            }
2825*35238bceSAndroid Build Coastguard Worker        ""
2826*35238bceSAndroid Build Coastguard Worker    end
2827*35238bceSAndroid Build Coastguard Worker
2828*35238bceSAndroid Build Coastguard Worker    case bvec3_to_vec2
2829*35238bceSAndroid Build Coastguard Worker        values
2830*35238bceSAndroid Build Coastguard Worker        {
2831*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2832*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 1.0) | vec2(1.0, 1.0) | vec2(0.0, 0.0) ];
2833*35238bceSAndroid Build Coastguard Worker        }
2834*35238bceSAndroid Build Coastguard Worker
2835*35238bceSAndroid Build Coastguard Worker        both ""
2836*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2837*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2838*35238bceSAndroid Build Coastguard Worker
2839*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2840*35238bceSAndroid Build Coastguard Worker
2841*35238bceSAndroid Build Coastguard Worker            void main()
2842*35238bceSAndroid Build Coastguard Worker            {
2843*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2844*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2845*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2846*35238bceSAndroid Build Coastguard Worker            }
2847*35238bceSAndroid Build Coastguard Worker        ""
2848*35238bceSAndroid Build Coastguard Worker    end
2849*35238bceSAndroid Build Coastguard Worker
2850*35238bceSAndroid Build Coastguard Worker    case bvec3_to_ivec3
2851*35238bceSAndroid Build Coastguard Worker        values
2852*35238bceSAndroid Build Coastguard Worker        {
2853*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2854*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(1, 0, 0) | ivec3(0, 0, 0) | ivec3(0, 1, 0) | ivec3(1, 1, 1) | ivec3(0, 0, 0) ];
2855*35238bceSAndroid Build Coastguard Worker        }
2856*35238bceSAndroid Build Coastguard Worker
2857*35238bceSAndroid Build Coastguard Worker        both ""
2858*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2859*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2860*35238bceSAndroid Build Coastguard Worker
2861*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2862*35238bceSAndroid Build Coastguard Worker
2863*35238bceSAndroid Build Coastguard Worker            void main()
2864*35238bceSAndroid Build Coastguard Worker            {
2865*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2866*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0);
2867*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2868*35238bceSAndroid Build Coastguard Worker            }
2869*35238bceSAndroid Build Coastguard Worker        ""
2870*35238bceSAndroid Build Coastguard Worker    end
2871*35238bceSAndroid Build Coastguard Worker
2872*35238bceSAndroid Build Coastguard Worker    case bvec3_to_ivec2
2873*35238bceSAndroid Build Coastguard Worker        values
2874*35238bceSAndroid Build Coastguard Worker        {
2875*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2876*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, 0) | ivec2(0, 0) | ivec2(0, 1) | ivec2(1, 1) | ivec2(0, 0) ];
2877*35238bceSAndroid Build Coastguard Worker        }
2878*35238bceSAndroid Build Coastguard Worker
2879*35238bceSAndroid Build Coastguard Worker        both ""
2880*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2881*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2882*35238bceSAndroid Build Coastguard Worker
2883*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2884*35238bceSAndroid Build Coastguard Worker
2885*35238bceSAndroid Build Coastguard Worker            void main()
2886*35238bceSAndroid Build Coastguard Worker            {
2887*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2888*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2889*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2890*35238bceSAndroid Build Coastguard Worker            }
2891*35238bceSAndroid Build Coastguard Worker        ""
2892*35238bceSAndroid Build Coastguard Worker    end
2893*35238bceSAndroid Build Coastguard Worker
2894*35238bceSAndroid Build Coastguard Worker    case bvec3_to_bvec3
2895*35238bceSAndroid Build Coastguard Worker        values
2896*35238bceSAndroid Build Coastguard Worker        {
2897*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2898*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2899*35238bceSAndroid Build Coastguard Worker        }
2900*35238bceSAndroid Build Coastguard Worker
2901*35238bceSAndroid Build Coastguard Worker        both ""
2902*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2903*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2904*35238bceSAndroid Build Coastguard Worker
2905*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2906*35238bceSAndroid Build Coastguard Worker
2907*35238bceSAndroid Build Coastguard Worker            void main()
2908*35238bceSAndroid Build Coastguard Worker            {
2909*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2910*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0);
2911*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2912*35238bceSAndroid Build Coastguard Worker            }
2913*35238bceSAndroid Build Coastguard Worker        ""
2914*35238bceSAndroid Build Coastguard Worker    end
2915*35238bceSAndroid Build Coastguard Worker
2916*35238bceSAndroid Build Coastguard Worker    case bvec3_to_bvec2
2917*35238bceSAndroid Build Coastguard Worker        values
2918*35238bceSAndroid Build Coastguard Worker        {
2919*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) ];
2920*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
2921*35238bceSAndroid Build Coastguard Worker        }
2922*35238bceSAndroid Build Coastguard Worker
2923*35238bceSAndroid Build Coastguard Worker        both ""
2924*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2925*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2926*35238bceSAndroid Build Coastguard Worker
2927*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2928*35238bceSAndroid Build Coastguard Worker
2929*35238bceSAndroid Build Coastguard Worker            void main()
2930*35238bceSAndroid Build Coastguard Worker            {
2931*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2932*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2933*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2934*35238bceSAndroid Build Coastguard Worker            }
2935*35238bceSAndroid Build Coastguard Worker        ""
2936*35238bceSAndroid Build Coastguard Worker    end
2937*35238bceSAndroid Build Coastguard Worker
2938*35238bceSAndroid Build Coastguard Worker    case vec2_to_vec2
2939*35238bceSAndroid Build Coastguard Worker        values
2940*35238bceSAndroid Build Coastguard Worker        {
2941*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
2942*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
2943*35238bceSAndroid Build Coastguard Worker        }
2944*35238bceSAndroid Build Coastguard Worker
2945*35238bceSAndroid Build Coastguard Worker        both ""
2946*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2947*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2948*35238bceSAndroid Build Coastguard Worker
2949*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2950*35238bceSAndroid Build Coastguard Worker
2951*35238bceSAndroid Build Coastguard Worker            void main()
2952*35238bceSAndroid Build Coastguard Worker            {
2953*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2954*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
2955*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2956*35238bceSAndroid Build Coastguard Worker            }
2957*35238bceSAndroid Build Coastguard Worker        ""
2958*35238bceSAndroid Build Coastguard Worker    end
2959*35238bceSAndroid Build Coastguard Worker
2960*35238bceSAndroid Build Coastguard Worker    case vec2_to_ivec2
2961*35238bceSAndroid Build Coastguard Worker        values
2962*35238bceSAndroid Build Coastguard Worker        {
2963*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
2964*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
2965*35238bceSAndroid Build Coastguard Worker        }
2966*35238bceSAndroid Build Coastguard Worker
2967*35238bceSAndroid Build Coastguard Worker        both ""
2968*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2969*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2970*35238bceSAndroid Build Coastguard Worker
2971*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2972*35238bceSAndroid Build Coastguard Worker
2973*35238bceSAndroid Build Coastguard Worker            void main()
2974*35238bceSAndroid Build Coastguard Worker            {
2975*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2976*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
2977*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
2978*35238bceSAndroid Build Coastguard Worker            }
2979*35238bceSAndroid Build Coastguard Worker        ""
2980*35238bceSAndroid Build Coastguard Worker    end
2981*35238bceSAndroid Build Coastguard Worker
2982*35238bceSAndroid Build Coastguard Worker    case vec2_to_bvec2
2983*35238bceSAndroid Build Coastguard Worker        values
2984*35238bceSAndroid Build Coastguard Worker        {
2985*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) ];
2986*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) ];
2987*35238bceSAndroid Build Coastguard Worker        }
2988*35238bceSAndroid Build Coastguard Worker
2989*35238bceSAndroid Build Coastguard Worker        both ""
2990*35238bceSAndroid Build Coastguard Worker            precision mediump float;
2991*35238bceSAndroid Build Coastguard Worker            precision mediump int;
2992*35238bceSAndroid Build Coastguard Worker
2993*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
2994*35238bceSAndroid Build Coastguard Worker
2995*35238bceSAndroid Build Coastguard Worker            void main()
2996*35238bceSAndroid Build Coastguard Worker            {
2997*35238bceSAndroid Build Coastguard Worker                ${SETUP}
2998*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
2999*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3000*35238bceSAndroid Build Coastguard Worker            }
3001*35238bceSAndroid Build Coastguard Worker        ""
3002*35238bceSAndroid Build Coastguard Worker    end
3003*35238bceSAndroid Build Coastguard Worker
3004*35238bceSAndroid Build Coastguard Worker    case ivec2_to_vec2
3005*35238bceSAndroid Build Coastguard Worker        values
3006*35238bceSAndroid Build Coastguard Worker        {
3007*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3008*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(0.0, 0.0) | vec2(1.0, 1.0) | vec2(0.0, -2.0) | vec2(-32.0, 64.0) | vec2(0.0, 0.0) ];
3009*35238bceSAndroid Build Coastguard Worker        }
3010*35238bceSAndroid Build Coastguard Worker
3011*35238bceSAndroid Build Coastguard Worker        both ""
3012*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3013*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3014*35238bceSAndroid Build Coastguard Worker
3015*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3016*35238bceSAndroid Build Coastguard Worker
3017*35238bceSAndroid Build Coastguard Worker            void main()
3018*35238bceSAndroid Build Coastguard Worker            {
3019*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3020*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
3021*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3022*35238bceSAndroid Build Coastguard Worker            }
3023*35238bceSAndroid Build Coastguard Worker        ""
3024*35238bceSAndroid Build Coastguard Worker    end
3025*35238bceSAndroid Build Coastguard Worker
3026*35238bceSAndroid Build Coastguard Worker    case ivec2_to_ivec2
3027*35238bceSAndroid Build Coastguard Worker        values
3028*35238bceSAndroid Build Coastguard Worker        {
3029*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3030*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3031*35238bceSAndroid Build Coastguard Worker        }
3032*35238bceSAndroid Build Coastguard Worker
3033*35238bceSAndroid Build Coastguard Worker        both ""
3034*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3035*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3036*35238bceSAndroid Build Coastguard Worker
3037*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3038*35238bceSAndroid Build Coastguard Worker
3039*35238bceSAndroid Build Coastguard Worker            void main()
3040*35238bceSAndroid Build Coastguard Worker            {
3041*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3042*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
3043*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3044*35238bceSAndroid Build Coastguard Worker            }
3045*35238bceSAndroid Build Coastguard Worker        ""
3046*35238bceSAndroid Build Coastguard Worker    end
3047*35238bceSAndroid Build Coastguard Worker
3048*35238bceSAndroid Build Coastguard Worker    case ivec2_to_bvec2
3049*35238bceSAndroid Build Coastguard Worker        values
3050*35238bceSAndroid Build Coastguard Worker        {
3051*35238bceSAndroid Build Coastguard Worker            input ivec2 in0 = [ ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) ];
3052*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(false, false) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3053*35238bceSAndroid Build Coastguard Worker        }
3054*35238bceSAndroid Build Coastguard Worker
3055*35238bceSAndroid Build Coastguard Worker        both ""
3056*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3057*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3058*35238bceSAndroid Build Coastguard Worker
3059*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3060*35238bceSAndroid Build Coastguard Worker
3061*35238bceSAndroid Build Coastguard Worker            void main()
3062*35238bceSAndroid Build Coastguard Worker            {
3063*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3064*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
3065*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3066*35238bceSAndroid Build Coastguard Worker            }
3067*35238bceSAndroid Build Coastguard Worker        ""
3068*35238bceSAndroid Build Coastguard Worker    end
3069*35238bceSAndroid Build Coastguard Worker
3070*35238bceSAndroid Build Coastguard Worker    case bvec2_to_vec2
3071*35238bceSAndroid Build Coastguard Worker        values
3072*35238bceSAndroid Build Coastguard Worker        {
3073*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3074*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, 0.0) | vec2(0.0, 0.0) | vec2(0.0, 1.0) | vec2(1.0, 1.0) | vec2(0.0, 0.0) ];
3075*35238bceSAndroid Build Coastguard Worker        }
3076*35238bceSAndroid Build Coastguard Worker
3077*35238bceSAndroid Build Coastguard Worker        both ""
3078*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3079*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3080*35238bceSAndroid Build Coastguard Worker
3081*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3082*35238bceSAndroid Build Coastguard Worker
3083*35238bceSAndroid Build Coastguard Worker            void main()
3084*35238bceSAndroid Build Coastguard Worker            {
3085*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3086*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0);
3087*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3088*35238bceSAndroid Build Coastguard Worker            }
3089*35238bceSAndroid Build Coastguard Worker        ""
3090*35238bceSAndroid Build Coastguard Worker    end
3091*35238bceSAndroid Build Coastguard Worker
3092*35238bceSAndroid Build Coastguard Worker    case bvec2_to_ivec2
3093*35238bceSAndroid Build Coastguard Worker        values
3094*35238bceSAndroid Build Coastguard Worker        {
3095*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3096*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, 0) | ivec2(0, 0) | ivec2(0, 1) | ivec2(1, 1) | ivec2(0, 0) ];
3097*35238bceSAndroid Build Coastguard Worker        }
3098*35238bceSAndroid Build Coastguard Worker
3099*35238bceSAndroid Build Coastguard Worker        both ""
3100*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3101*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3102*35238bceSAndroid Build Coastguard Worker
3103*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3104*35238bceSAndroid Build Coastguard Worker
3105*35238bceSAndroid Build Coastguard Worker            void main()
3106*35238bceSAndroid Build Coastguard Worker            {
3107*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3108*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0);
3109*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3110*35238bceSAndroid Build Coastguard Worker            }
3111*35238bceSAndroid Build Coastguard Worker        ""
3112*35238bceSAndroid Build Coastguard Worker    end
3113*35238bceSAndroid Build Coastguard Worker
3114*35238bceSAndroid Build Coastguard Worker    case bvec2_to_bvec2
3115*35238bceSAndroid Build Coastguard Worker        values
3116*35238bceSAndroid Build Coastguard Worker        {
3117*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3118*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3119*35238bceSAndroid Build Coastguard Worker        }
3120*35238bceSAndroid Build Coastguard Worker
3121*35238bceSAndroid Build Coastguard Worker        both ""
3122*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3123*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3124*35238bceSAndroid Build Coastguard Worker
3125*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3126*35238bceSAndroid Build Coastguard Worker
3127*35238bceSAndroid Build Coastguard Worker            void main()
3128*35238bceSAndroid Build Coastguard Worker            {
3129*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3130*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0);
3131*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3132*35238bceSAndroid Build Coastguard Worker            }
3133*35238bceSAndroid Build Coastguard Worker        ""
3134*35238bceSAndroid Build Coastguard Worker    end
3135*35238bceSAndroid Build Coastguard Worker
3136*35238bceSAndroid Build Coastguard Worker
3137*35238bceSAndroid Build Coastguard Workerend # vector_to_vector
3138*35238bceSAndroid Build Coastguard Workergroup scalar_to_matrix "Scalar to Matrix Conversions"
3139*35238bceSAndroid Build Coastguard Worker
3140*35238bceSAndroid Build Coastguard Worker    case float_to_mat4
3141*35238bceSAndroid Build Coastguard Worker        values
3142*35238bceSAndroid Build Coastguard Worker        {
3143*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
3144*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) | mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(2.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 2.0) | mat4(3.5, 0.0, 0.0, 0.0, 0.0, 3.5, 0.0, 0.0, 0.0, 0.0, 3.5, 0.0, 0.0, 0.0, 0.0, 3.5) | mat4(-0.5, 0.0, 0.0, 0.0, 0.0, -0.5, 0.0, 0.0, 0.0, 0.0, -0.5, 0.0, 0.0, 0.0, 0.0, -0.5) | mat4(-8.25, 0.0, 0.0, 0.0, 0.0, -8.25, 0.0, 0.0, 0.0, 0.0, -8.25, 0.0, 0.0, 0.0, 0.0, -8.25) | mat4(-20.125, 0.0, 0.0, 0.0, 0.0, -20.125, 0.0, 0.0, 0.0, 0.0, -20.125, 0.0, 0.0, 0.0, 0.0, -20.125) | mat4(36.8125, 0.0, 0.0, 0.0, 0.0, 36.8125, 0.0, 0.0, 0.0, 0.0, 36.8125, 0.0, 0.0, 0.0, 0.0, 36.8125) ];
3145*35238bceSAndroid Build Coastguard Worker        }
3146*35238bceSAndroid Build Coastguard Worker
3147*35238bceSAndroid Build Coastguard Worker        both ""
3148*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3149*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3150*35238bceSAndroid Build Coastguard Worker
3151*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3152*35238bceSAndroid Build Coastguard Worker
3153*35238bceSAndroid Build Coastguard Worker            void main()
3154*35238bceSAndroid Build Coastguard Worker            {
3155*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3156*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3157*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3158*35238bceSAndroid Build Coastguard Worker            }
3159*35238bceSAndroid Build Coastguard Worker        ""
3160*35238bceSAndroid Build Coastguard Worker    end
3161*35238bceSAndroid Build Coastguard Worker
3162*35238bceSAndroid Build Coastguard Worker    case float_to_mat3
3163*35238bceSAndroid Build Coastguard Worker        values
3164*35238bceSAndroid Build Coastguard Worker        {
3165*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
3166*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) | mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(2.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 2.0) | mat3(3.5, 0.0, 0.0, 0.0, 3.5, 0.0, 0.0, 0.0, 3.5) | mat3(-0.5, 0.0, 0.0, 0.0, -0.5, 0.0, 0.0, 0.0, -0.5) | mat3(-8.25, 0.0, 0.0, 0.0, -8.25, 0.0, 0.0, 0.0, -8.25) | mat3(-20.125, 0.0, 0.0, 0.0, -20.125, 0.0, 0.0, 0.0, -20.125) | mat3(36.8125, 0.0, 0.0, 0.0, 36.8125, 0.0, 0.0, 0.0, 36.8125) ];
3167*35238bceSAndroid Build Coastguard Worker        }
3168*35238bceSAndroid Build Coastguard Worker
3169*35238bceSAndroid Build Coastguard Worker        both ""
3170*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3171*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3172*35238bceSAndroid Build Coastguard Worker
3173*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3174*35238bceSAndroid Build Coastguard Worker
3175*35238bceSAndroid Build Coastguard Worker            void main()
3176*35238bceSAndroid Build Coastguard Worker            {
3177*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3178*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3179*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3180*35238bceSAndroid Build Coastguard Worker            }
3181*35238bceSAndroid Build Coastguard Worker        ""
3182*35238bceSAndroid Build Coastguard Worker    end
3183*35238bceSAndroid Build Coastguard Worker
3184*35238bceSAndroid Build Coastguard Worker    case float_to_mat2
3185*35238bceSAndroid Build Coastguard Worker        values
3186*35238bceSAndroid Build Coastguard Worker        {
3187*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | 1.0 | 2.0 | 3.5 | -0.5 | -8.25 | -20.125 | 36.8125 ];
3188*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.0, 0.0, 0.0) | mat2(1.0, 0.0, 0.0, 1.0) | mat2(2.0, 0.0, 0.0, 2.0) | mat2(3.5, 0.0, 0.0, 3.5) | mat2(-0.5, 0.0, 0.0, -0.5) | mat2(-8.25, 0.0, 0.0, -8.25) | mat2(-20.125, 0.0, 0.0, -20.125) | mat2(36.8125, 0.0, 0.0, 36.8125) ];
3189*35238bceSAndroid Build Coastguard Worker        }
3190*35238bceSAndroid Build Coastguard Worker
3191*35238bceSAndroid Build Coastguard Worker        both ""
3192*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3193*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3194*35238bceSAndroid Build Coastguard Worker
3195*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3196*35238bceSAndroid Build Coastguard Worker
3197*35238bceSAndroid Build Coastguard Worker            void main()
3198*35238bceSAndroid Build Coastguard Worker            {
3199*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3200*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3201*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3202*35238bceSAndroid Build Coastguard Worker            }
3203*35238bceSAndroid Build Coastguard Worker        ""
3204*35238bceSAndroid Build Coastguard Worker    end
3205*35238bceSAndroid Build Coastguard Worker
3206*35238bceSAndroid Build Coastguard Worker    case int_to_mat4
3207*35238bceSAndroid Build Coastguard Worker        values
3208*35238bceSAndroid Build Coastguard Worker        {
3209*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
3210*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) | mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(2.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 2.0) | mat4(5.0, 0.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 5.0) | mat4(8.0, 0.0, 0.0, 0.0, 0.0, 8.0, 0.0, 0.0, 0.0, 0.0, 8.0, 0.0, 0.0, 0.0, 0.0, 8.0) | mat4(11.0, 0.0, 0.0, 0.0, 0.0, 11.0, 0.0, 0.0, 0.0, 0.0, 11.0, 0.0, 0.0, 0.0, 0.0, 11.0) | mat4(-12.0, 0.0, 0.0, 0.0, 0.0, -12.0, 0.0, 0.0, 0.0, 0.0, -12.0, 0.0, 0.0, 0.0, 0.0, -12.0) | mat4(-66.0, 0.0, 0.0, 0.0, 0.0, -66.0, 0.0, 0.0, 0.0, 0.0, -66.0, 0.0, 0.0, 0.0, 0.0, -66.0) | mat4(-192.0, 0.0, 0.0, 0.0, 0.0, -192.0, 0.0, 0.0, 0.0, 0.0, -192.0, 0.0, 0.0, 0.0, 0.0, -192.0) | mat4(255.0, 0.0, 0.0, 0.0, 0.0, 255.0, 0.0, 0.0, 0.0, 0.0, 255.0, 0.0, 0.0, 0.0, 0.0, 255.0) ];
3211*35238bceSAndroid Build Coastguard Worker        }
3212*35238bceSAndroid Build Coastguard Worker
3213*35238bceSAndroid Build Coastguard Worker        both ""
3214*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3215*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3216*35238bceSAndroid Build Coastguard Worker
3217*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3218*35238bceSAndroid Build Coastguard Worker
3219*35238bceSAndroid Build Coastguard Worker            void main()
3220*35238bceSAndroid Build Coastguard Worker            {
3221*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3222*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3223*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3224*35238bceSAndroid Build Coastguard Worker            }
3225*35238bceSAndroid Build Coastguard Worker        ""
3226*35238bceSAndroid Build Coastguard Worker    end
3227*35238bceSAndroid Build Coastguard Worker
3228*35238bceSAndroid Build Coastguard Worker    case int_to_mat3
3229*35238bceSAndroid Build Coastguard Worker        values
3230*35238bceSAndroid Build Coastguard Worker        {
3231*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
3232*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) | mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(2.0, 0.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 2.0) | mat3(5.0, 0.0, 0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 5.0) | mat3(8.0, 0.0, 0.0, 0.0, 8.0, 0.0, 0.0, 0.0, 8.0) | mat3(11.0, 0.0, 0.0, 0.0, 11.0, 0.0, 0.0, 0.0, 11.0) | mat3(-12.0, 0.0, 0.0, 0.0, -12.0, 0.0, 0.0, 0.0, -12.0) | mat3(-66.0, 0.0, 0.0, 0.0, -66.0, 0.0, 0.0, 0.0, -66.0) | mat3(-192.0, 0.0, 0.0, 0.0, -192.0, 0.0, 0.0, 0.0, -192.0) | mat3(255.0, 0.0, 0.0, 0.0, 255.0, 0.0, 0.0, 0.0, 255.0) ];
3233*35238bceSAndroid Build Coastguard Worker        }
3234*35238bceSAndroid Build Coastguard Worker
3235*35238bceSAndroid Build Coastguard Worker        both ""
3236*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3237*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3238*35238bceSAndroid Build Coastguard Worker
3239*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3240*35238bceSAndroid Build Coastguard Worker
3241*35238bceSAndroid Build Coastguard Worker            void main()
3242*35238bceSAndroid Build Coastguard Worker            {
3243*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3244*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3245*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3246*35238bceSAndroid Build Coastguard Worker            }
3247*35238bceSAndroid Build Coastguard Worker        ""
3248*35238bceSAndroid Build Coastguard Worker    end
3249*35238bceSAndroid Build Coastguard Worker
3250*35238bceSAndroid Build Coastguard Worker    case int_to_mat2
3251*35238bceSAndroid Build Coastguard Worker        values
3252*35238bceSAndroid Build Coastguard Worker        {
3253*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 1 | 2 | 5 | 8 | 11 | -12 | -66 | -192 | 255 ];
3254*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.0, 0.0, 0.0) | mat2(1.0, 0.0, 0.0, 1.0) | mat2(2.0, 0.0, 0.0, 2.0) | mat2(5.0, 0.0, 0.0, 5.0) | mat2(8.0, 0.0, 0.0, 8.0) | mat2(11.0, 0.0, 0.0, 11.0) | mat2(-12.0, 0.0, 0.0, -12.0) | mat2(-66.0, 0.0, 0.0, -66.0) | mat2(-192.0, 0.0, 0.0, -192.0) | mat2(255.0, 0.0, 0.0, 255.0) ];
3255*35238bceSAndroid Build Coastguard Worker        }
3256*35238bceSAndroid Build Coastguard Worker
3257*35238bceSAndroid Build Coastguard Worker        both ""
3258*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3259*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3260*35238bceSAndroid Build Coastguard Worker
3261*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3262*35238bceSAndroid Build Coastguard Worker
3263*35238bceSAndroid Build Coastguard Worker            void main()
3264*35238bceSAndroid Build Coastguard Worker            {
3265*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3266*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3267*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3268*35238bceSAndroid Build Coastguard Worker            }
3269*35238bceSAndroid Build Coastguard Worker        ""
3270*35238bceSAndroid Build Coastguard Worker    end
3271*35238bceSAndroid Build Coastguard Worker
3272*35238bceSAndroid Build Coastguard Worker    case bool_to_mat4
3273*35238bceSAndroid Build Coastguard Worker        values
3274*35238bceSAndroid Build Coastguard Worker        {
3275*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3276*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) ];
3277*35238bceSAndroid Build Coastguard Worker        }
3278*35238bceSAndroid Build Coastguard Worker
3279*35238bceSAndroid Build Coastguard Worker        both ""
3280*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3281*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3282*35238bceSAndroid Build Coastguard Worker
3283*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3284*35238bceSAndroid Build Coastguard Worker
3285*35238bceSAndroid Build Coastguard Worker            void main()
3286*35238bceSAndroid Build Coastguard Worker            {
3287*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3288*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3289*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3290*35238bceSAndroid Build Coastguard Worker            }
3291*35238bceSAndroid Build Coastguard Worker        ""
3292*35238bceSAndroid Build Coastguard Worker    end
3293*35238bceSAndroid Build Coastguard Worker
3294*35238bceSAndroid Build Coastguard Worker    case bool_to_mat3
3295*35238bceSAndroid Build Coastguard Worker        values
3296*35238bceSAndroid Build Coastguard Worker        {
3297*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3298*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) ];
3299*35238bceSAndroid Build Coastguard Worker        }
3300*35238bceSAndroid Build Coastguard Worker
3301*35238bceSAndroid Build Coastguard Worker        both ""
3302*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3303*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3304*35238bceSAndroid Build Coastguard Worker
3305*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3306*35238bceSAndroid Build Coastguard Worker
3307*35238bceSAndroid Build Coastguard Worker            void main()
3308*35238bceSAndroid Build Coastguard Worker            {
3309*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3310*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3311*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3312*35238bceSAndroid Build Coastguard Worker            }
3313*35238bceSAndroid Build Coastguard Worker        ""
3314*35238bceSAndroid Build Coastguard Worker    end
3315*35238bceSAndroid Build Coastguard Worker
3316*35238bceSAndroid Build Coastguard Worker    case bool_to_mat2
3317*35238bceSAndroid Build Coastguard Worker        values
3318*35238bceSAndroid Build Coastguard Worker        {
3319*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3320*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(0.0, 0.0, 0.0, 0.0) ];
3321*35238bceSAndroid Build Coastguard Worker        }
3322*35238bceSAndroid Build Coastguard Worker
3323*35238bceSAndroid Build Coastguard Worker        both ""
3324*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3325*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3326*35238bceSAndroid Build Coastguard Worker
3327*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3328*35238bceSAndroid Build Coastguard Worker
3329*35238bceSAndroid Build Coastguard Worker            void main()
3330*35238bceSAndroid Build Coastguard Worker            {
3331*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3332*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3333*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3334*35238bceSAndroid Build Coastguard Worker            }
3335*35238bceSAndroid Build Coastguard Worker        ""
3336*35238bceSAndroid Build Coastguard Worker    end
3337*35238bceSAndroid Build Coastguard Worker
3338*35238bceSAndroid Build Coastguard Worker
3339*35238bceSAndroid Build Coastguard Workerend # scalar_to_matrix
3340*35238bceSAndroid Build Coastguard Workergroup matrix_to_matrix "Matrix to Matrix Conversions"
3341*35238bceSAndroid Build Coastguard Worker
3342*35238bceSAndroid Build Coastguard Worker    case mat4_to_mat4
3343*35238bceSAndroid Build Coastguard Worker        values
3344*35238bceSAndroid Build Coastguard Worker        {
3345*35238bceSAndroid Build Coastguard Worker            input mat4 in0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, 32.0, 0.125, -6.725, 12.5, 0.0208333333333, 0.0625, -0.5, -0.75, -8.425, 0.03125, -0.0125, 9.975, -6.542, 0.015625, 9.975) ];
3346*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, 32.0, 0.125, -6.725, 12.5, 0.0208333333333, 0.0625, -0.5, -0.75, -8.425, 0.03125, -0.0125, 9.975, -6.542, 0.015625, 9.975) ];
3347*35238bceSAndroid Build Coastguard Worker        }
3348*35238bceSAndroid Build Coastguard Worker
3349*35238bceSAndroid Build Coastguard Worker        both ""
3350*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3351*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3352*35238bceSAndroid Build Coastguard Worker
3353*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3354*35238bceSAndroid Build Coastguard Worker
3355*35238bceSAndroid Build Coastguard Worker            void main()
3356*35238bceSAndroid Build Coastguard Worker            {
3357*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3358*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3359*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3360*35238bceSAndroid Build Coastguard Worker            }
3361*35238bceSAndroid Build Coastguard Worker        ""
3362*35238bceSAndroid Build Coastguard Worker    end
3363*35238bceSAndroid Build Coastguard Worker
3364*35238bceSAndroid Build Coastguard Worker    case mat4_to_mat3
3365*35238bceSAndroid Build Coastguard Worker        values
3366*35238bceSAndroid Build Coastguard Worker        {
3367*35238bceSAndroid Build Coastguard Worker            input mat4 in0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, 32.0, 0.125, -6.725, 12.5, 0.0208333333333, 0.0625, -0.5, -0.75, -8.425, 0.03125, -0.0125, 9.975, -6.542, 0.015625, 9.975) ];
3368*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, 32.0, 0.125, 12.5, 0.0208333333333, 0.0625, -0.75, -8.425, 0.03125) ];
3369*35238bceSAndroid Build Coastguard Worker        }
3370*35238bceSAndroid Build Coastguard Worker
3371*35238bceSAndroid Build Coastguard Worker        both ""
3372*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3373*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3374*35238bceSAndroid Build Coastguard Worker
3375*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3376*35238bceSAndroid Build Coastguard Worker
3377*35238bceSAndroid Build Coastguard Worker            void main()
3378*35238bceSAndroid Build Coastguard Worker            {
3379*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3380*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3381*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3382*35238bceSAndroid Build Coastguard Worker            }
3383*35238bceSAndroid Build Coastguard Worker        ""
3384*35238bceSAndroid Build Coastguard Worker    end
3385*35238bceSAndroid Build Coastguard Worker
3386*35238bceSAndroid Build Coastguard Worker    case mat4_to_mat2
3387*35238bceSAndroid Build Coastguard Worker        values
3388*35238bceSAndroid Build Coastguard Worker        {
3389*35238bceSAndroid Build Coastguard Worker            input mat4 in0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, 32.0, 0.125, -6.725, 12.5, 0.0208333333333, 0.0625, -0.5, -0.75, -8.425, 0.03125, -0.0125, 9.975, -6.542, 0.015625, 9.975) ];
3390*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, 32.0, 12.5, 0.0208333333333) ];
3391*35238bceSAndroid Build Coastguard Worker        }
3392*35238bceSAndroid Build Coastguard Worker
3393*35238bceSAndroid Build Coastguard Worker        both ""
3394*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3395*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3396*35238bceSAndroid Build Coastguard Worker
3397*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3398*35238bceSAndroid Build Coastguard Worker
3399*35238bceSAndroid Build Coastguard Worker            void main()
3400*35238bceSAndroid Build Coastguard Worker            {
3401*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3402*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3403*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3404*35238bceSAndroid Build Coastguard Worker            }
3405*35238bceSAndroid Build Coastguard Worker        ""
3406*35238bceSAndroid Build Coastguard Worker    end
3407*35238bceSAndroid Build Coastguard Worker
3408*35238bceSAndroid Build Coastguard Worker    case mat3_to_mat4
3409*35238bceSAndroid Build Coastguard Worker        values
3410*35238bceSAndroid Build Coastguard Worker        {
3411*35238bceSAndroid Build Coastguard Worker            input mat3 in0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, 32.0, 0.125, 12.5, 0.03125, 0.0625, -0.75, 0.015625, 0.03125) ];
3412*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, 32.0, 0.125, 0.0, 12.5, 0.03125, 0.0625, 0.0, -0.75, 0.015625, 0.03125, 0.0, 0.0, 0.0, 0.0, 1.0) ];
3413*35238bceSAndroid Build Coastguard Worker        }
3414*35238bceSAndroid Build Coastguard Worker
3415*35238bceSAndroid Build Coastguard Worker        both ""
3416*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3417*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3418*35238bceSAndroid Build Coastguard Worker
3419*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3420*35238bceSAndroid Build Coastguard Worker
3421*35238bceSAndroid Build Coastguard Worker            void main()
3422*35238bceSAndroid Build Coastguard Worker            {
3423*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3424*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3425*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3426*35238bceSAndroid Build Coastguard Worker            }
3427*35238bceSAndroid Build Coastguard Worker        ""
3428*35238bceSAndroid Build Coastguard Worker    end
3429*35238bceSAndroid Build Coastguard Worker
3430*35238bceSAndroid Build Coastguard Worker    case mat3_to_mat3
3431*35238bceSAndroid Build Coastguard Worker        values
3432*35238bceSAndroid Build Coastguard Worker        {
3433*35238bceSAndroid Build Coastguard Worker            input mat3 in0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, 32.0, 0.125, 12.5, 0.03125, 0.0625, -0.75, 0.015625, 0.03125) ];
3434*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, 32.0, 0.125, 12.5, 0.03125, 0.0625, -0.75, 0.015625, 0.03125) ];
3435*35238bceSAndroid Build Coastguard Worker        }
3436*35238bceSAndroid Build Coastguard Worker
3437*35238bceSAndroid Build Coastguard Worker        both ""
3438*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3439*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3440*35238bceSAndroid Build Coastguard Worker
3441*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3442*35238bceSAndroid Build Coastguard Worker
3443*35238bceSAndroid Build Coastguard Worker            void main()
3444*35238bceSAndroid Build Coastguard Worker            {
3445*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3446*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3447*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3448*35238bceSAndroid Build Coastguard Worker            }
3449*35238bceSAndroid Build Coastguard Worker        ""
3450*35238bceSAndroid Build Coastguard Worker    end
3451*35238bceSAndroid Build Coastguard Worker
3452*35238bceSAndroid Build Coastguard Worker    case mat3_to_mat2
3453*35238bceSAndroid Build Coastguard Worker        values
3454*35238bceSAndroid Build Coastguard Worker        {
3455*35238bceSAndroid Build Coastguard Worker            input mat3 in0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, 32.0, 0.125, 12.5, 0.03125, 0.0625, -0.75, 0.015625, 0.03125) ];
3456*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, 32.0, 12.5, 0.03125) ];
3457*35238bceSAndroid Build Coastguard Worker        }
3458*35238bceSAndroid Build Coastguard Worker
3459*35238bceSAndroid Build Coastguard Worker        both ""
3460*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3461*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3462*35238bceSAndroid Build Coastguard Worker
3463*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3464*35238bceSAndroid Build Coastguard Worker
3465*35238bceSAndroid Build Coastguard Worker            void main()
3466*35238bceSAndroid Build Coastguard Worker            {
3467*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3468*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3469*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3470*35238bceSAndroid Build Coastguard Worker            }
3471*35238bceSAndroid Build Coastguard Worker        ""
3472*35238bceSAndroid Build Coastguard Worker    end
3473*35238bceSAndroid Build Coastguard Worker
3474*35238bceSAndroid Build Coastguard Worker    case mat2_to_mat4
3475*35238bceSAndroid Build Coastguard Worker        values
3476*35238bceSAndroid Build Coastguard Worker        {
3477*35238bceSAndroid Build Coastguard Worker            input mat2 in0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(8.0, -24.0, 16.0, -16.0) | mat2(0.125, 0.03125, 0.0625, 0.015625) | mat2(-18.725, -0.0125, -0.5, 19.975) ];
3478*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, -0.75, 0.0, 0.0, 12.5, 9.975, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(6.5, -0.75, 0.0, 0.0, 12.5, 9.975, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(8.0, -24.0, 0.0, 0.0, 16.0, -16.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(0.125, 0.03125, 0.0, 0.0, 0.0625, 0.015625, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) | mat4(-18.725, -0.0125, 0.0, 0.0, -0.5, 19.975, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0) ];
3479*35238bceSAndroid Build Coastguard Worker        }
3480*35238bceSAndroid Build Coastguard Worker
3481*35238bceSAndroid Build Coastguard Worker        both ""
3482*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3483*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3484*35238bceSAndroid Build Coastguard Worker
3485*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3486*35238bceSAndroid Build Coastguard Worker
3487*35238bceSAndroid Build Coastguard Worker            void main()
3488*35238bceSAndroid Build Coastguard Worker            {
3489*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3490*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0);
3491*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3492*35238bceSAndroid Build Coastguard Worker            }
3493*35238bceSAndroid Build Coastguard Worker        ""
3494*35238bceSAndroid Build Coastguard Worker    end
3495*35238bceSAndroid Build Coastguard Worker
3496*35238bceSAndroid Build Coastguard Worker    case mat2_to_mat3
3497*35238bceSAndroid Build Coastguard Worker        values
3498*35238bceSAndroid Build Coastguard Worker        {
3499*35238bceSAndroid Build Coastguard Worker            input mat2 in0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(8.0, -24.0, 16.0, -16.0) | mat2(0.125, 0.03125, 0.0625, 0.015625) | mat2(-18.725, -0.0125, -0.5, 19.975) ];
3500*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, -0.75, 0.0, 12.5, 9.975, 0.0, 0.0, 0.0, 1.0) | mat3(6.5, -0.75, 0.0, 12.5, 9.975, 0.0, 0.0, 0.0, 1.0) | mat3(8.0, -24.0, 0.0, 16.0, -16.0, 0.0, 0.0, 0.0, 1.0) | mat3(0.125, 0.03125, 0.0, 0.0625, 0.015625, 0.0, 0.0, 0.0, 1.0) | mat3(-18.725, -0.0125, 0.0, -0.5, 19.975, 0.0, 0.0, 0.0, 1.0) ];
3501*35238bceSAndroid Build Coastguard Worker        }
3502*35238bceSAndroid Build Coastguard Worker
3503*35238bceSAndroid Build Coastguard Worker        both ""
3504*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3505*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3506*35238bceSAndroid Build Coastguard Worker
3507*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3508*35238bceSAndroid Build Coastguard Worker
3509*35238bceSAndroid Build Coastguard Worker            void main()
3510*35238bceSAndroid Build Coastguard Worker            {
3511*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3512*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0);
3513*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3514*35238bceSAndroid Build Coastguard Worker            }
3515*35238bceSAndroid Build Coastguard Worker        ""
3516*35238bceSAndroid Build Coastguard Worker    end
3517*35238bceSAndroid Build Coastguard Worker
3518*35238bceSAndroid Build Coastguard Worker    case mat2_to_mat2
3519*35238bceSAndroid Build Coastguard Worker        values
3520*35238bceSAndroid Build Coastguard Worker        {
3521*35238bceSAndroid Build Coastguard Worker            input mat2 in0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(8.0, -24.0, 16.0, -16.0) | mat2(0.125, 0.03125, 0.0625, 0.015625) | mat2(-18.725, -0.0125, -0.5, 19.975) ];
3522*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 0.0, 1.0) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(6.5, -0.75, 12.5, 9.975) | mat2(8.0, -24.0, 16.0, -16.0) | mat2(0.125, 0.03125, 0.0625, 0.015625) | mat2(-18.725, -0.0125, -0.5, 19.975) ];
3523*35238bceSAndroid Build Coastguard Worker        }
3524*35238bceSAndroid Build Coastguard Worker
3525*35238bceSAndroid Build Coastguard Worker        both ""
3526*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3527*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3528*35238bceSAndroid Build Coastguard Worker
3529*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3530*35238bceSAndroid Build Coastguard Worker
3531*35238bceSAndroid Build Coastguard Worker            void main()
3532*35238bceSAndroid Build Coastguard Worker            {
3533*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3534*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0);
3535*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3536*35238bceSAndroid Build Coastguard Worker            }
3537*35238bceSAndroid Build Coastguard Worker        ""
3538*35238bceSAndroid Build Coastguard Worker    end
3539*35238bceSAndroid Build Coastguard Worker
3540*35238bceSAndroid Build Coastguard Worker
3541*35238bceSAndroid Build Coastguard Workerend # matrix_to_matrix
3542*35238bceSAndroid Build Coastguard Workergroup vector_combine "Vector Combine Constructors"
3543*35238bceSAndroid Build Coastguard Worker
3544*35238bceSAndroid Build Coastguard Worker    case vec2_vec2_to_vec4
3545*35238bceSAndroid Build Coastguard Worker        values
3546*35238bceSAndroid Build Coastguard Worker        {
3547*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.75, -0.0322580645161) ];
3548*35238bceSAndroid Build Coastguard Worker            input vec2 in1 = [ vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) ];
3549*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-0.5, -2.25, -32.0, 64.0) | vec4(-32.0, 64.0, 1.0, 1.25) | vec4(1.0, 1.25, 0.0, 0.5) | vec4(0.0, 0.5, -0.5, -2.25) | vec4(-0.75, -0.0322580645161, -0.75, -0.0322580645161) ];
3550*35238bceSAndroid Build Coastguard Worker        }
3551*35238bceSAndroid Build Coastguard Worker
3552*35238bceSAndroid Build Coastguard Worker        both ""
3553*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3554*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3555*35238bceSAndroid Build Coastguard Worker
3556*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3557*35238bceSAndroid Build Coastguard Worker
3558*35238bceSAndroid Build Coastguard Worker            void main()
3559*35238bceSAndroid Build Coastguard Worker            {
3560*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3561*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
3562*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3563*35238bceSAndroid Build Coastguard Worker            }
3564*35238bceSAndroid Build Coastguard Worker        ""
3565*35238bceSAndroid Build Coastguard Worker    end
3566*35238bceSAndroid Build Coastguard Worker
3567*35238bceSAndroid Build Coastguard Worker    case vec2_vec2_to_ivec4
3568*35238bceSAndroid Build Coastguard Worker        values
3569*35238bceSAndroid Build Coastguard Worker        {
3570*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.75, -0.0322580645161) ];
3571*35238bceSAndroid Build Coastguard Worker            input vec2 in1 = [ vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) ];
3572*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, -2, -32, 64) | ivec4(-32, 64, 1, 1) | ivec4(1, 1, 0, 0) | ivec4(0, 0, 0, -2) | ivec4(0, 0, 0, 0) ];
3573*35238bceSAndroid Build Coastguard Worker        }
3574*35238bceSAndroid Build Coastguard Worker
3575*35238bceSAndroid Build Coastguard Worker        both ""
3576*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3577*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3578*35238bceSAndroid Build Coastguard Worker
3579*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3580*35238bceSAndroid Build Coastguard Worker
3581*35238bceSAndroid Build Coastguard Worker            void main()
3582*35238bceSAndroid Build Coastguard Worker            {
3583*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3584*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
3585*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3586*35238bceSAndroid Build Coastguard Worker            }
3587*35238bceSAndroid Build Coastguard Worker        ""
3588*35238bceSAndroid Build Coastguard Worker    end
3589*35238bceSAndroid Build Coastguard Worker
3590*35238bceSAndroid Build Coastguard Worker    case vec2_vec2_to_bvec4
3591*35238bceSAndroid Build Coastguard Worker        values
3592*35238bceSAndroid Build Coastguard Worker        {
3593*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.75, -0.0322580645161) ];
3594*35238bceSAndroid Build Coastguard Worker            input vec2 in1 = [ vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) ];
3595*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, false, true) | bvec4(false, true, true, true) | bvec4(true, true, true, true) ];
3596*35238bceSAndroid Build Coastguard Worker        }
3597*35238bceSAndroid Build Coastguard Worker
3598*35238bceSAndroid Build Coastguard Worker        both ""
3599*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3600*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3601*35238bceSAndroid Build Coastguard Worker
3602*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3603*35238bceSAndroid Build Coastguard Worker
3604*35238bceSAndroid Build Coastguard Worker            void main()
3605*35238bceSAndroid Build Coastguard Worker            {
3606*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3607*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
3608*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3609*35238bceSAndroid Build Coastguard Worker            }
3610*35238bceSAndroid Build Coastguard Worker        ""
3611*35238bceSAndroid Build Coastguard Worker    end
3612*35238bceSAndroid Build Coastguard Worker
3613*35238bceSAndroid Build Coastguard Worker    case bvec2_bvec2_to_vec4
3614*35238bceSAndroid Build Coastguard Worker        values
3615*35238bceSAndroid Build Coastguard Worker        {
3616*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
3617*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3618*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(0.0, 0.0, 1.0, 0.0) | vec4(1.0, 0.0, 0.0, 0.0) | vec4(0.0, 1.0, 0.0, 1.0) | vec4(0.0, 0.0, 1.0, 1.0) | vec4(1.0, 1.0, 0.0, 0.0) ];
3619*35238bceSAndroid Build Coastguard Worker        }
3620*35238bceSAndroid Build Coastguard Worker
3621*35238bceSAndroid Build Coastguard Worker        both ""
3622*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3623*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3624*35238bceSAndroid Build Coastguard Worker
3625*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3626*35238bceSAndroid Build Coastguard Worker
3627*35238bceSAndroid Build Coastguard Worker            void main()
3628*35238bceSAndroid Build Coastguard Worker            {
3629*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3630*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
3631*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3632*35238bceSAndroid Build Coastguard Worker            }
3633*35238bceSAndroid Build Coastguard Worker        ""
3634*35238bceSAndroid Build Coastguard Worker    end
3635*35238bceSAndroid Build Coastguard Worker
3636*35238bceSAndroid Build Coastguard Worker    case bvec2_bvec2_to_ivec4
3637*35238bceSAndroid Build Coastguard Worker        values
3638*35238bceSAndroid Build Coastguard Worker        {
3639*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
3640*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3641*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 1, 0) | ivec4(1, 0, 0, 0) | ivec4(0, 1, 0, 1) | ivec4(0, 0, 1, 1) | ivec4(1, 1, 0, 0) ];
3642*35238bceSAndroid Build Coastguard Worker        }
3643*35238bceSAndroid Build Coastguard Worker
3644*35238bceSAndroid Build Coastguard Worker        both ""
3645*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3646*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3647*35238bceSAndroid Build Coastguard Worker
3648*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3649*35238bceSAndroid Build Coastguard Worker
3650*35238bceSAndroid Build Coastguard Worker            void main()
3651*35238bceSAndroid Build Coastguard Worker            {
3652*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3653*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
3654*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3655*35238bceSAndroid Build Coastguard Worker            }
3656*35238bceSAndroid Build Coastguard Worker        ""
3657*35238bceSAndroid Build Coastguard Worker    end
3658*35238bceSAndroid Build Coastguard Worker
3659*35238bceSAndroid Build Coastguard Worker    case bvec2_bvec2_to_bvec4
3660*35238bceSAndroid Build Coastguard Worker        values
3661*35238bceSAndroid Build Coastguard Worker        {
3662*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
3663*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) ];
3664*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(false, false, true, false) | bvec4(true, false, false, false) | bvec4(false, true, false, true) | bvec4(false, false, true, true) | bvec4(true, true, false, false) ];
3665*35238bceSAndroid Build Coastguard Worker        }
3666*35238bceSAndroid Build Coastguard Worker
3667*35238bceSAndroid Build Coastguard Worker        both ""
3668*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3669*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3670*35238bceSAndroid Build Coastguard Worker
3671*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3672*35238bceSAndroid Build Coastguard Worker
3673*35238bceSAndroid Build Coastguard Worker            void main()
3674*35238bceSAndroid Build Coastguard Worker            {
3675*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3676*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
3677*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3678*35238bceSAndroid Build Coastguard Worker            }
3679*35238bceSAndroid Build Coastguard Worker        ""
3680*35238bceSAndroid Build Coastguard Worker    end
3681*35238bceSAndroid Build Coastguard Worker
3682*35238bceSAndroid Build Coastguard Worker    case float_float_float_float_to_vec4
3683*35238bceSAndroid Build Coastguard Worker        values
3684*35238bceSAndroid Build Coastguard Worker        {
3685*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | 0.0 | -0.5 | -8.25 | 3.5 | -20.125 | 36.8125 | 2.0 ];
3686*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 36.8125 | -8.25 | 2.0 | 3.5 | 1.0 | -20.125 | -0.5 ];
3687*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 3.5 | 36.8125 | -8.25 | 1.0 | 2.0 | 0.0 | -20.125 | -0.5 ];
3688*35238bceSAndroid Build Coastguard Worker            input float in3 = [ 3.5 | 36.8125 | 1.0 | -8.25 | 2.0 | 0.0 | -0.5 | -20.125 ];
3689*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 0.0, 3.5, 3.5) | vec4(0.0, 36.8125, 36.8125, 36.8125) | vec4(-0.5, -8.25, -8.25, 1.0) | vec4(-8.25, 2.0, 1.0, -8.25) | vec4(3.5, 3.5, 2.0, 2.0) | vec4(-20.125, 1.0, 0.0, 0.0) | vec4(36.8125, -20.125, -20.125, -0.5) | vec4(2.0, -0.5, -0.5, -20.125) ];
3690*35238bceSAndroid Build Coastguard Worker        }
3691*35238bceSAndroid Build Coastguard Worker
3692*35238bceSAndroid Build Coastguard Worker        both ""
3693*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3694*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3695*35238bceSAndroid Build Coastguard Worker
3696*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3697*35238bceSAndroid Build Coastguard Worker
3698*35238bceSAndroid Build Coastguard Worker            void main()
3699*35238bceSAndroid Build Coastguard Worker            {
3700*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3701*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2, in3);
3702*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3703*35238bceSAndroid Build Coastguard Worker            }
3704*35238bceSAndroid Build Coastguard Worker        ""
3705*35238bceSAndroid Build Coastguard Worker    end
3706*35238bceSAndroid Build Coastguard Worker
3707*35238bceSAndroid Build Coastguard Worker    case float_float_float_float_to_ivec4
3708*35238bceSAndroid Build Coastguard Worker        values
3709*35238bceSAndroid Build Coastguard Worker        {
3710*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | 0.0 | -0.5 | -8.25 | 3.5 | -20.125 | 36.8125 | 2.0 ];
3711*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 36.8125 | -8.25 | 2.0 | 3.5 | 1.0 | -20.125 | -0.5 ];
3712*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 3.5 | 36.8125 | -8.25 | 1.0 | 2.0 | 0.0 | -20.125 | -0.5 ];
3713*35238bceSAndroid Build Coastguard Worker            input float in3 = [ 3.5 | 36.8125 | 1.0 | -8.25 | 2.0 | 0.0 | -0.5 | -20.125 ];
3714*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 0, 3, 3) | ivec4(0, 36, 36, 36) | ivec4(0, -8, -8, 1) | ivec4(-8, 2, 1, -8) | ivec4(3, 3, 2, 2) | ivec4(-20, 1, 0, 0) | ivec4(36, -20, -20, 0) | ivec4(2, 0, 0, -20) ];
3715*35238bceSAndroid Build Coastguard Worker        }
3716*35238bceSAndroid Build Coastguard Worker
3717*35238bceSAndroid Build Coastguard Worker        both ""
3718*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3719*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3720*35238bceSAndroid Build Coastguard Worker
3721*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3722*35238bceSAndroid Build Coastguard Worker
3723*35238bceSAndroid Build Coastguard Worker            void main()
3724*35238bceSAndroid Build Coastguard Worker            {
3725*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3726*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2, in3);
3727*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3728*35238bceSAndroid Build Coastguard Worker            }
3729*35238bceSAndroid Build Coastguard Worker        ""
3730*35238bceSAndroid Build Coastguard Worker    end
3731*35238bceSAndroid Build Coastguard Worker
3732*35238bceSAndroid Build Coastguard Worker    case float_float_float_float_to_bvec4
3733*35238bceSAndroid Build Coastguard Worker        values
3734*35238bceSAndroid Build Coastguard Worker        {
3735*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | 0.0 | -0.5 | -8.25 | 3.5 | -20.125 | 36.8125 | 2.0 ];
3736*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 36.8125 | -8.25 | 2.0 | 3.5 | 1.0 | -20.125 | -0.5 ];
3737*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 3.5 | 36.8125 | -8.25 | 1.0 | 2.0 | 0.0 | -20.125 | -0.5 ];
3738*35238bceSAndroid Build Coastguard Worker            input float in3 = [ 3.5 | 36.8125 | 1.0 | -8.25 | 2.0 | 0.0 | -0.5 | -20.125 ];
3739*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, false, true, true) | bvec4(false, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) ];
3740*35238bceSAndroid Build Coastguard Worker        }
3741*35238bceSAndroid Build Coastguard Worker
3742*35238bceSAndroid Build Coastguard Worker        both ""
3743*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3744*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3745*35238bceSAndroid Build Coastguard Worker
3746*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3747*35238bceSAndroid Build Coastguard Worker
3748*35238bceSAndroid Build Coastguard Worker            void main()
3749*35238bceSAndroid Build Coastguard Worker            {
3750*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3751*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2, in3);
3752*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3753*35238bceSAndroid Build Coastguard Worker            }
3754*35238bceSAndroid Build Coastguard Worker        ""
3755*35238bceSAndroid Build Coastguard Worker    end
3756*35238bceSAndroid Build Coastguard Worker
3757*35238bceSAndroid Build Coastguard Worker    case int_int_int_int_to_vec4
3758*35238bceSAndroid Build Coastguard Worker        values
3759*35238bceSAndroid Build Coastguard Worker        {
3760*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -12 | -66 | 2 | 5 | 8 | -192 | 255 | 1 | 0 | 11 ];
3761*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 5 | -66 | 11 | -192 | 8 | -12 | 1 | 255 | 0 ];
3762*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 11 | 255 | 5 | 8 | 2 | -192 | -12 | -66 | 1 | 0 ];
3763*35238bceSAndroid Build Coastguard Worker            input int in3 = [ -192 | -66 | 8 | -12 | 1 | 2 | 0 | 255 | 5 | 11 ];
3764*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-12.0, 2.0, 11.0, -192.0) | vec4(-66.0, 5.0, 255.0, -66.0) | vec4(2.0, -66.0, 5.0, 8.0) | vec4(5.0, 11.0, 8.0, -12.0) | vec4(8.0, -192.0, 2.0, 1.0) | vec4(-192.0, 8.0, -192.0, 2.0) | vec4(255.0, -12.0, -12.0, 0.0) | vec4(1.0, 1.0, -66.0, 255.0) | vec4(0.0, 255.0, 1.0, 5.0) | vec4(11.0, 0.0, 0.0, 11.0) ];
3765*35238bceSAndroid Build Coastguard Worker        }
3766*35238bceSAndroid Build Coastguard Worker
3767*35238bceSAndroid Build Coastguard Worker        both ""
3768*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3769*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3770*35238bceSAndroid Build Coastguard Worker
3771*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3772*35238bceSAndroid Build Coastguard Worker
3773*35238bceSAndroid Build Coastguard Worker            void main()
3774*35238bceSAndroid Build Coastguard Worker            {
3775*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3776*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2, in3);
3777*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3778*35238bceSAndroid Build Coastguard Worker            }
3779*35238bceSAndroid Build Coastguard Worker        ""
3780*35238bceSAndroid Build Coastguard Worker    end
3781*35238bceSAndroid Build Coastguard Worker
3782*35238bceSAndroid Build Coastguard Worker    case int_int_int_int_to_ivec4
3783*35238bceSAndroid Build Coastguard Worker        values
3784*35238bceSAndroid Build Coastguard Worker        {
3785*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -12 | -66 | 2 | 5 | 8 | -192 | 255 | 1 | 0 | 11 ];
3786*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 5 | -66 | 11 | -192 | 8 | -12 | 1 | 255 | 0 ];
3787*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 11 | 255 | 5 | 8 | 2 | -192 | -12 | -66 | 1 | 0 ];
3788*35238bceSAndroid Build Coastguard Worker            input int in3 = [ -192 | -66 | 8 | -12 | 1 | 2 | 0 | 255 | 5 | 11 ];
3789*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(-12, 2, 11, -192) | ivec4(-66, 5, 255, -66) | ivec4(2, -66, 5, 8) | ivec4(5, 11, 8, -12) | ivec4(8, -192, 2, 1) | ivec4(-192, 8, -192, 2) | ivec4(255, -12, -12, 0) | ivec4(1, 1, -66, 255) | ivec4(0, 255, 1, 5) | ivec4(11, 0, 0, 11) ];
3790*35238bceSAndroid Build Coastguard Worker        }
3791*35238bceSAndroid Build Coastguard Worker
3792*35238bceSAndroid Build Coastguard Worker        both ""
3793*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3794*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3795*35238bceSAndroid Build Coastguard Worker
3796*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3797*35238bceSAndroid Build Coastguard Worker
3798*35238bceSAndroid Build Coastguard Worker            void main()
3799*35238bceSAndroid Build Coastguard Worker            {
3800*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3801*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2, in3);
3802*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3803*35238bceSAndroid Build Coastguard Worker            }
3804*35238bceSAndroid Build Coastguard Worker        ""
3805*35238bceSAndroid Build Coastguard Worker    end
3806*35238bceSAndroid Build Coastguard Worker
3807*35238bceSAndroid Build Coastguard Worker    case int_int_int_int_to_bvec4
3808*35238bceSAndroid Build Coastguard Worker        values
3809*35238bceSAndroid Build Coastguard Worker        {
3810*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -12 | -66 | 2 | 5 | 8 | -192 | 255 | 1 | 0 | 11 ];
3811*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 5 | -66 | 11 | -192 | 8 | -12 | 1 | 255 | 0 ];
3812*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 11 | 255 | 5 | 8 | 2 | -192 | -12 | -66 | 1 | 0 ];
3813*35238bceSAndroid Build Coastguard Worker            input int in3 = [ -192 | -66 | 8 | -12 | 1 | 2 | 0 | 255 | 5 | 11 ];
3814*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, false) | bvec4(true, true, true, true) | bvec4(false, true, true, true) | bvec4(true, false, false, true) ];
3815*35238bceSAndroid Build Coastguard Worker        }
3816*35238bceSAndroid Build Coastguard Worker
3817*35238bceSAndroid Build Coastguard Worker        both ""
3818*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3819*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3820*35238bceSAndroid Build Coastguard Worker
3821*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3822*35238bceSAndroid Build Coastguard Worker
3823*35238bceSAndroid Build Coastguard Worker            void main()
3824*35238bceSAndroid Build Coastguard Worker            {
3825*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3826*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2, in3);
3827*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3828*35238bceSAndroid Build Coastguard Worker            }
3829*35238bceSAndroid Build Coastguard Worker        ""
3830*35238bceSAndroid Build Coastguard Worker    end
3831*35238bceSAndroid Build Coastguard Worker
3832*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_bool_to_vec4
3833*35238bceSAndroid Build Coastguard Worker        values
3834*35238bceSAndroid Build Coastguard Worker        {
3835*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3836*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
3837*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ true | false ];
3838*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ false | true ];
3839*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 0.0, 1.0, 0.0) | vec4(0.0, 1.0, 0.0, 1.0) ];
3840*35238bceSAndroid Build Coastguard Worker        }
3841*35238bceSAndroid Build Coastguard Worker
3842*35238bceSAndroid Build Coastguard Worker        both ""
3843*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3844*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3845*35238bceSAndroid Build Coastguard Worker
3846*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3847*35238bceSAndroid Build Coastguard Worker
3848*35238bceSAndroid Build Coastguard Worker            void main()
3849*35238bceSAndroid Build Coastguard Worker            {
3850*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3851*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2, in3);
3852*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3853*35238bceSAndroid Build Coastguard Worker            }
3854*35238bceSAndroid Build Coastguard Worker        ""
3855*35238bceSAndroid Build Coastguard Worker    end
3856*35238bceSAndroid Build Coastguard Worker
3857*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_bool_to_ivec4
3858*35238bceSAndroid Build Coastguard Worker        values
3859*35238bceSAndroid Build Coastguard Worker        {
3860*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3861*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
3862*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ true | false ];
3863*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ false | true ];
3864*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 0, 1, 0) | ivec4(0, 1, 0, 1) ];
3865*35238bceSAndroid Build Coastguard Worker        }
3866*35238bceSAndroid Build Coastguard Worker
3867*35238bceSAndroid Build Coastguard Worker        both ""
3868*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3869*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3870*35238bceSAndroid Build Coastguard Worker
3871*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3872*35238bceSAndroid Build Coastguard Worker
3873*35238bceSAndroid Build Coastguard Worker            void main()
3874*35238bceSAndroid Build Coastguard Worker            {
3875*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3876*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2, in3);
3877*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3878*35238bceSAndroid Build Coastguard Worker            }
3879*35238bceSAndroid Build Coastguard Worker        ""
3880*35238bceSAndroid Build Coastguard Worker    end
3881*35238bceSAndroid Build Coastguard Worker
3882*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_bool_to_bvec4
3883*35238bceSAndroid Build Coastguard Worker        values
3884*35238bceSAndroid Build Coastguard Worker        {
3885*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
3886*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
3887*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ true | false ];
3888*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ false | true ];
3889*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, false, true, false) | bvec4(false, true, false, true) ];
3890*35238bceSAndroid Build Coastguard Worker        }
3891*35238bceSAndroid Build Coastguard Worker
3892*35238bceSAndroid Build Coastguard Worker        both ""
3893*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3894*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3895*35238bceSAndroid Build Coastguard Worker
3896*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3897*35238bceSAndroid Build Coastguard Worker
3898*35238bceSAndroid Build Coastguard Worker            void main()
3899*35238bceSAndroid Build Coastguard Worker            {
3900*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3901*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2, in3);
3902*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3903*35238bceSAndroid Build Coastguard Worker            }
3904*35238bceSAndroid Build Coastguard Worker        ""
3905*35238bceSAndroid Build Coastguard Worker    end
3906*35238bceSAndroid Build Coastguard Worker
3907*35238bceSAndroid Build Coastguard Worker    case bool_float_int_bool_to_vec4
3908*35238bceSAndroid Build Coastguard Worker        values
3909*35238bceSAndroid Build Coastguard Worker        {
3910*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | false | false | false | true | false | true | false ];
3911*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 1.0 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 | -0.5 | 3.5 | -20.125 | 0.0 ];
3912*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | 2 | -66 | 255 | 8 | 0 | 5 | 11 | 1 ];
3913*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ true | true | false | false | true | false | false | false | true | true ];
3914*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 1.0, -192.0, 1.0) | vec4(1.0, 2.0, -12.0, 1.0) | vec4(1.0, 1.0, 2.0, 0.0) | vec4(0.0, 0.0, -66.0, 0.0) | vec4(0.0, 36.8125, 255.0, 1.0) | vec4(0.0, -8.25, 8.0, 0.0) | vec4(1.0, -0.5, 0.0, 0.0) | vec4(0.0, 3.5, 5.0, 0.0) | vec4(1.0, -20.125, 11.0, 1.0) | vec4(0.0, 0.0, 1.0, 1.0) ];
3915*35238bceSAndroid Build Coastguard Worker        }
3916*35238bceSAndroid Build Coastguard Worker
3917*35238bceSAndroid Build Coastguard Worker        both ""
3918*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3919*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3920*35238bceSAndroid Build Coastguard Worker
3921*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3922*35238bceSAndroid Build Coastguard Worker
3923*35238bceSAndroid Build Coastguard Worker            void main()
3924*35238bceSAndroid Build Coastguard Worker            {
3925*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3926*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2, in3);
3927*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3928*35238bceSAndroid Build Coastguard Worker            }
3929*35238bceSAndroid Build Coastguard Worker        ""
3930*35238bceSAndroid Build Coastguard Worker    end
3931*35238bceSAndroid Build Coastguard Worker
3932*35238bceSAndroid Build Coastguard Worker    case bool_float_int_bool_to_ivec4
3933*35238bceSAndroid Build Coastguard Worker        values
3934*35238bceSAndroid Build Coastguard Worker        {
3935*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | false | false | false | true | false | true | false ];
3936*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 1.0 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 | -0.5 | 3.5 | -20.125 | 0.0 ];
3937*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | 2 | -66 | 255 | 8 | 0 | 5 | 11 | 1 ];
3938*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ true | true | false | false | true | false | false | false | true | true ];
3939*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 1, -192, 1) | ivec4(1, 2, -12, 1) | ivec4(1, 1, 2, 0) | ivec4(0, 0, -66, 0) | ivec4(0, 36, 255, 1) | ivec4(0, -8, 8, 0) | ivec4(1, 0, 0, 0) | ivec4(0, 3, 5, 0) | ivec4(1, -20, 11, 1) | ivec4(0, 0, 1, 1) ];
3940*35238bceSAndroid Build Coastguard Worker        }
3941*35238bceSAndroid Build Coastguard Worker
3942*35238bceSAndroid Build Coastguard Worker        both ""
3943*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3944*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3945*35238bceSAndroid Build Coastguard Worker
3946*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3947*35238bceSAndroid Build Coastguard Worker
3948*35238bceSAndroid Build Coastguard Worker            void main()
3949*35238bceSAndroid Build Coastguard Worker            {
3950*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3951*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2, in3);
3952*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3953*35238bceSAndroid Build Coastguard Worker            }
3954*35238bceSAndroid Build Coastguard Worker        ""
3955*35238bceSAndroid Build Coastguard Worker    end
3956*35238bceSAndroid Build Coastguard Worker
3957*35238bceSAndroid Build Coastguard Worker    case bool_float_int_bool_to_bvec4
3958*35238bceSAndroid Build Coastguard Worker        values
3959*35238bceSAndroid Build Coastguard Worker        {
3960*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | false | false | false | true | false | true | false ];
3961*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 1.0 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 | -0.5 | 3.5 | -20.125 | 0.0 ];
3962*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | 2 | -66 | 255 | 8 | 0 | 5 | 11 | 1 ];
3963*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ true | true | false | false | true | false | false | false | true | true ];
3964*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, false) | bvec4(false, false, true, false) | bvec4(false, true, true, true) | bvec4(false, true, true, false) | bvec4(true, true, false, false) | bvec4(false, true, true, false) | bvec4(true, true, true, true) | bvec4(false, false, true, true) ];
3965*35238bceSAndroid Build Coastguard Worker        }
3966*35238bceSAndroid Build Coastguard Worker
3967*35238bceSAndroid Build Coastguard Worker        both ""
3968*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3969*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3970*35238bceSAndroid Build Coastguard Worker
3971*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3972*35238bceSAndroid Build Coastguard Worker
3973*35238bceSAndroid Build Coastguard Worker            void main()
3974*35238bceSAndroid Build Coastguard Worker            {
3975*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3976*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2, in3);
3977*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
3978*35238bceSAndroid Build Coastguard Worker            }
3979*35238bceSAndroid Build Coastguard Worker        ""
3980*35238bceSAndroid Build Coastguard Worker    end
3981*35238bceSAndroid Build Coastguard Worker
3982*35238bceSAndroid Build Coastguard Worker    case vec2_ivec2_to_vec4
3983*35238bceSAndroid Build Coastguard Worker        values
3984*35238bceSAndroid Build Coastguard Worker        {
3985*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) ];
3986*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) | ivec2(1, 1) ];
3987*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-0.5, -2.25, 0.0, 0.0) | vec4(0.0, 0.5, 0.0, -2.0) | vec4(-32.0, 64.0, -32.0, 64.0) | vec4(1.0, 1.25, 0.0, 0.0) | vec4(-0.75, -0.0322580645161, 1.0, 1.0) ];
3988*35238bceSAndroid Build Coastguard Worker        }
3989*35238bceSAndroid Build Coastguard Worker
3990*35238bceSAndroid Build Coastguard Worker        both ""
3991*35238bceSAndroid Build Coastguard Worker            precision mediump float;
3992*35238bceSAndroid Build Coastguard Worker            precision mediump int;
3993*35238bceSAndroid Build Coastguard Worker
3994*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
3995*35238bceSAndroid Build Coastguard Worker
3996*35238bceSAndroid Build Coastguard Worker            void main()
3997*35238bceSAndroid Build Coastguard Worker            {
3998*35238bceSAndroid Build Coastguard Worker                ${SETUP}
3999*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
4000*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4001*35238bceSAndroid Build Coastguard Worker            }
4002*35238bceSAndroid Build Coastguard Worker        ""
4003*35238bceSAndroid Build Coastguard Worker    end
4004*35238bceSAndroid Build Coastguard Worker
4005*35238bceSAndroid Build Coastguard Worker    case vec2_ivec2_to_ivec4
4006*35238bceSAndroid Build Coastguard Worker        values
4007*35238bceSAndroid Build Coastguard Worker        {
4008*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) ];
4009*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) | ivec2(1, 1) ];
4010*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, -2, 0, 0) | ivec4(0, 0, 0, -2) | ivec4(-32, 64, -32, 64) | ivec4(1, 1, 0, 0) | ivec4(0, 0, 1, 1) ];
4011*35238bceSAndroid Build Coastguard Worker        }
4012*35238bceSAndroid Build Coastguard Worker
4013*35238bceSAndroid Build Coastguard Worker        both ""
4014*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4015*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4016*35238bceSAndroid Build Coastguard Worker
4017*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4018*35238bceSAndroid Build Coastguard Worker
4019*35238bceSAndroid Build Coastguard Worker            void main()
4020*35238bceSAndroid Build Coastguard Worker            {
4021*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4022*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
4023*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4024*35238bceSAndroid Build Coastguard Worker            }
4025*35238bceSAndroid Build Coastguard Worker        ""
4026*35238bceSAndroid Build Coastguard Worker    end
4027*35238bceSAndroid Build Coastguard Worker
4028*35238bceSAndroid Build Coastguard Worker    case vec2_ivec2_to_bvec4
4029*35238bceSAndroid Build Coastguard Worker        values
4030*35238bceSAndroid Build Coastguard Worker        {
4031*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) ];
4032*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) | ivec2(1, 1) ];
4033*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, false, false) | bvec4(false, true, false, true) | bvec4(true, true, true, true) | bvec4(true, true, false, false) | bvec4(true, true, true, true) ];
4034*35238bceSAndroid Build Coastguard Worker        }
4035*35238bceSAndroid Build Coastguard Worker
4036*35238bceSAndroid Build Coastguard Worker        both ""
4037*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4038*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4039*35238bceSAndroid Build Coastguard Worker
4040*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4041*35238bceSAndroid Build Coastguard Worker
4042*35238bceSAndroid Build Coastguard Worker            void main()
4043*35238bceSAndroid Build Coastguard Worker            {
4044*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4045*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
4046*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4047*35238bceSAndroid Build Coastguard Worker            }
4048*35238bceSAndroid Build Coastguard Worker        ""
4049*35238bceSAndroid Build Coastguard Worker    end
4050*35238bceSAndroid Build Coastguard Worker
4051*35238bceSAndroid Build Coastguard Worker    case vec2_bvec2_to_vec4
4052*35238bceSAndroid Build Coastguard Worker        values
4053*35238bceSAndroid Build Coastguard Worker        {
4054*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) | vec2(0.0, 0.5) ];
4055*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, true) | bvec2(false, false) ];
4056*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-32.0, 64.0, 0.0, 0.0) | vec4(-0.5, -2.25, 1.0, 0.0) | vec4(1.0, 1.25, 1.0, 1.0) | vec4(-0.75, -0.0322580645161, 0.0, 1.0) | vec4(0.0, 0.5, 0.0, 0.0) ];
4057*35238bceSAndroid Build Coastguard Worker        }
4058*35238bceSAndroid Build Coastguard Worker
4059*35238bceSAndroid Build Coastguard Worker        both ""
4060*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4061*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4062*35238bceSAndroid Build Coastguard Worker
4063*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4064*35238bceSAndroid Build Coastguard Worker
4065*35238bceSAndroid Build Coastguard Worker            void main()
4066*35238bceSAndroid Build Coastguard Worker            {
4067*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4068*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
4069*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4070*35238bceSAndroid Build Coastguard Worker            }
4071*35238bceSAndroid Build Coastguard Worker        ""
4072*35238bceSAndroid Build Coastguard Worker    end
4073*35238bceSAndroid Build Coastguard Worker
4074*35238bceSAndroid Build Coastguard Worker    case vec2_bvec2_to_ivec4
4075*35238bceSAndroid Build Coastguard Worker        values
4076*35238bceSAndroid Build Coastguard Worker        {
4077*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) | vec2(0.0, 0.5) ];
4078*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, true) | bvec2(false, false) ];
4079*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(-32, 64, 0, 0) | ivec4(0, -2, 1, 0) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 1) | ivec4(0, 0, 0, 0) ];
4080*35238bceSAndroid Build Coastguard Worker        }
4081*35238bceSAndroid Build Coastguard Worker
4082*35238bceSAndroid Build Coastguard Worker        both ""
4083*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4084*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4085*35238bceSAndroid Build Coastguard Worker
4086*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4087*35238bceSAndroid Build Coastguard Worker
4088*35238bceSAndroid Build Coastguard Worker            void main()
4089*35238bceSAndroid Build Coastguard Worker            {
4090*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4091*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
4092*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4093*35238bceSAndroid Build Coastguard Worker            }
4094*35238bceSAndroid Build Coastguard Worker        ""
4095*35238bceSAndroid Build Coastguard Worker    end
4096*35238bceSAndroid Build Coastguard Worker
4097*35238bceSAndroid Build Coastguard Worker    case vec2_bvec2_to_bvec4
4098*35238bceSAndroid Build Coastguard Worker        values
4099*35238bceSAndroid Build Coastguard Worker        {
4100*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) | vec2(0.0, 0.5) ];
4101*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(false, true) | bvec2(false, false) ];
4102*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, false, false) | bvec4(true, true, true, false) | bvec4(true, true, true, true) | bvec4(true, true, false, true) | bvec4(false, true, false, false) ];
4103*35238bceSAndroid Build Coastguard Worker        }
4104*35238bceSAndroid Build Coastguard Worker
4105*35238bceSAndroid Build Coastguard Worker        both ""
4106*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4107*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4108*35238bceSAndroid Build Coastguard Worker
4109*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4110*35238bceSAndroid Build Coastguard Worker
4111*35238bceSAndroid Build Coastguard Worker            void main()
4112*35238bceSAndroid Build Coastguard Worker            {
4113*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4114*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
4115*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4116*35238bceSAndroid Build Coastguard Worker            }
4117*35238bceSAndroid Build Coastguard Worker        ""
4118*35238bceSAndroid Build Coastguard Worker    end
4119*35238bceSAndroid Build Coastguard Worker
4120*35238bceSAndroid Build Coastguard Worker    case bvec3_float_to_vec4
4121*35238bceSAndroid Build Coastguard Worker        values
4122*35238bceSAndroid Build Coastguard Worker        {
4123*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, false, false) | bvec3(false, true, false) | bvec3(false, true, false) | bvec3(true, true, true) ];
4124*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -8.25 | -20.125 | 2.0 | 0.0 | -0.5 | 3.5 | 36.8125 | 1.0 ];
4125*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 0.0, 0.0, -8.25) | vec4(0.0, 0.0, 0.0, -20.125) | vec4(0.0, 0.0, 0.0, 2.0) | vec4(0.0, 0.0, 0.0, 0.0) | vec4(1.0, 0.0, 0.0, -0.5) | vec4(0.0, 1.0, 0.0, 3.5) | vec4(0.0, 1.0, 0.0, 36.8125) | vec4(1.0, 1.0, 1.0, 1.0) ];
4126*35238bceSAndroid Build Coastguard Worker        }
4127*35238bceSAndroid Build Coastguard Worker
4128*35238bceSAndroid Build Coastguard Worker        both ""
4129*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4130*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4131*35238bceSAndroid Build Coastguard Worker
4132*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4133*35238bceSAndroid Build Coastguard Worker
4134*35238bceSAndroid Build Coastguard Worker            void main()
4135*35238bceSAndroid Build Coastguard Worker            {
4136*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4137*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
4138*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4139*35238bceSAndroid Build Coastguard Worker            }
4140*35238bceSAndroid Build Coastguard Worker        ""
4141*35238bceSAndroid Build Coastguard Worker    end
4142*35238bceSAndroid Build Coastguard Worker
4143*35238bceSAndroid Build Coastguard Worker    case bvec3_float_to_ivec4
4144*35238bceSAndroid Build Coastguard Worker        values
4145*35238bceSAndroid Build Coastguard Worker        {
4146*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, false, false) | bvec3(false, true, false) | bvec3(false, true, false) | bvec3(true, true, true) ];
4147*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -8.25 | -20.125 | 2.0 | 0.0 | -0.5 | 3.5 | 36.8125 | 1.0 ];
4148*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 0, 0, -8) | ivec4(0, 0, 0, -20) | ivec4(0, 0, 0, 2) | ivec4(0, 0, 0, 0) | ivec4(1, 0, 0, 0) | ivec4(0, 1, 0, 3) | ivec4(0, 1, 0, 36) | ivec4(1, 1, 1, 1) ];
4149*35238bceSAndroid Build Coastguard Worker        }
4150*35238bceSAndroid Build Coastguard Worker
4151*35238bceSAndroid Build Coastguard Worker        both ""
4152*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4153*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4154*35238bceSAndroid Build Coastguard Worker
4155*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4156*35238bceSAndroid Build Coastguard Worker
4157*35238bceSAndroid Build Coastguard Worker            void main()
4158*35238bceSAndroid Build Coastguard Worker            {
4159*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4160*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
4161*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4162*35238bceSAndroid Build Coastguard Worker            }
4163*35238bceSAndroid Build Coastguard Worker        ""
4164*35238bceSAndroid Build Coastguard Worker    end
4165*35238bceSAndroid Build Coastguard Worker
4166*35238bceSAndroid Build Coastguard Worker    case bvec3_float_to_bvec4
4167*35238bceSAndroid Build Coastguard Worker        values
4168*35238bceSAndroid Build Coastguard Worker        {
4169*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(true, false, false) | bvec3(false, true, false) | bvec3(false, true, false) | bvec3(true, true, true) ];
4170*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -8.25 | -20.125 | 2.0 | 0.0 | -0.5 | 3.5 | 36.8125 | 1.0 ];
4171*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, false, false, true) | bvec4(false, false, false, false) | bvec4(true, false, false, true) | bvec4(false, true, false, true) | bvec4(false, true, false, true) | bvec4(true, true, true, true) ];
4172*35238bceSAndroid Build Coastguard Worker        }
4173*35238bceSAndroid Build Coastguard Worker
4174*35238bceSAndroid Build Coastguard Worker        both ""
4175*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4176*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4177*35238bceSAndroid Build Coastguard Worker
4178*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4179*35238bceSAndroid Build Coastguard Worker
4180*35238bceSAndroid Build Coastguard Worker            void main()
4181*35238bceSAndroid Build Coastguard Worker            {
4182*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4183*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
4184*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4185*35238bceSAndroid Build Coastguard Worker            }
4186*35238bceSAndroid Build Coastguard Worker        ""
4187*35238bceSAndroid Build Coastguard Worker    end
4188*35238bceSAndroid Build Coastguard Worker
4189*35238bceSAndroid Build Coastguard Worker    case vec3_float_to_vec4
4190*35238bceSAndroid Build Coastguard Worker        values
4191*35238bceSAndroid Build Coastguard Worker        {
4192*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(0.0, 0.5, 0.75) | vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(1.0, 1.25, 1.125) ];
4193*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 36.8125 | 3.5 | 1.0 | -0.5 | -8.25 | -20.125 ];
4194*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.0) | vec4(0.0, 0.5, 0.75, 2.0) | vec4(-0.5, -2.25, -4.875, 36.8125) | vec4(0.0, 0.5, 0.75, 3.5) | vec4(1.0, 1.25, 1.125, 1.0) | vec4(-0.5, -2.25, -4.875, -0.5) | vec4(-32.0, 64.0, -51.0, -8.25) | vec4(1.0, 1.25, 1.125, -20.125) ];
4195*35238bceSAndroid Build Coastguard Worker        }
4196*35238bceSAndroid Build Coastguard Worker
4197*35238bceSAndroid Build Coastguard Worker        both ""
4198*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4199*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4200*35238bceSAndroid Build Coastguard Worker
4201*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4202*35238bceSAndroid Build Coastguard Worker
4203*35238bceSAndroid Build Coastguard Worker            void main()
4204*35238bceSAndroid Build Coastguard Worker            {
4205*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4206*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1);
4207*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4208*35238bceSAndroid Build Coastguard Worker            }
4209*35238bceSAndroid Build Coastguard Worker        ""
4210*35238bceSAndroid Build Coastguard Worker    end
4211*35238bceSAndroid Build Coastguard Worker
4212*35238bceSAndroid Build Coastguard Worker    case vec3_float_to_ivec4
4213*35238bceSAndroid Build Coastguard Worker        values
4214*35238bceSAndroid Build Coastguard Worker        {
4215*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(0.0, 0.5, 0.75) | vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(1.0, 1.25, 1.125) ];
4216*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 36.8125 | 3.5 | 1.0 | -0.5 | -8.25 | -20.125 ];
4217*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(0, 0, 0, 0) | ivec4(0, 0, 0, 2) | ivec4(0, -2, -4, 36) | ivec4(0, 0, 0, 3) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 0) | ivec4(-32, 64, -51, -8) | ivec4(1, 1, 1, -20) ];
4218*35238bceSAndroid Build Coastguard Worker        }
4219*35238bceSAndroid Build Coastguard Worker
4220*35238bceSAndroid Build Coastguard Worker        both ""
4221*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4222*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4223*35238bceSAndroid Build Coastguard Worker
4224*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4225*35238bceSAndroid Build Coastguard Worker
4226*35238bceSAndroid Build Coastguard Worker            void main()
4227*35238bceSAndroid Build Coastguard Worker            {
4228*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4229*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1);
4230*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4231*35238bceSAndroid Build Coastguard Worker            }
4232*35238bceSAndroid Build Coastguard Worker        ""
4233*35238bceSAndroid Build Coastguard Worker    end
4234*35238bceSAndroid Build Coastguard Worker
4235*35238bceSAndroid Build Coastguard Worker    case vec3_float_to_bvec4
4236*35238bceSAndroid Build Coastguard Worker        values
4237*35238bceSAndroid Build Coastguard Worker        {
4238*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(0.0, 0.5, 0.75) | vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.5, -2.25, -4.875) | vec3(-32.0, 64.0, -51.0) | vec3(1.0, 1.25, 1.125) ];
4239*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 36.8125 | 3.5 | 1.0 | -0.5 | -8.25 | -20.125 ];
4240*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, true, false) | bvec4(false, true, true, true) | bvec4(true, true, true, true) | bvec4(false, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) ];
4241*35238bceSAndroid Build Coastguard Worker        }
4242*35238bceSAndroid Build Coastguard Worker
4243*35238bceSAndroid Build Coastguard Worker        both ""
4244*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4245*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4246*35238bceSAndroid Build Coastguard Worker
4247*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4248*35238bceSAndroid Build Coastguard Worker
4249*35238bceSAndroid Build Coastguard Worker            void main()
4250*35238bceSAndroid Build Coastguard Worker            {
4251*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4252*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1);
4253*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4254*35238bceSAndroid Build Coastguard Worker            }
4255*35238bceSAndroid Build Coastguard Worker        ""
4256*35238bceSAndroid Build Coastguard Worker    end
4257*35238bceSAndroid Build Coastguard Worker
4258*35238bceSAndroid Build Coastguard Worker    case int_ivec2_int_to_vec4
4259*35238bceSAndroid Build Coastguard Worker        values
4260*35238bceSAndroid Build Coastguard Worker        {
4261*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -66 | 8 | -192 | 255 | 5 | -12 | 0 | 2 | 1 | 11 ];
4262*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(0, 0) ];
4263*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 8 | 2 | 11 | -192 | 255 | -12 | 0 | -66 | 1 | 5 ];
4264*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(-66.0, 0.0, 0.0, 8.0) | vec4(8.0, 0.0, 0.0, 2.0) | vec4(-192.0, -32.0, 64.0, 11.0) | vec4(255.0, -32.0, 64.0, -192.0) | vec4(5.0, 1.0, 1.0, 255.0) | vec4(-12.0, 0.0, 0.0, -12.0) | vec4(0.0, 1.0, 1.0, 0.0) | vec4(2.0, 0.0, -2.0, -66.0) | vec4(1.0, 0.0, -2.0, 1.0) | vec4(11.0, 0.0, 0.0, 5.0) ];
4265*35238bceSAndroid Build Coastguard Worker        }
4266*35238bceSAndroid Build Coastguard Worker
4267*35238bceSAndroid Build Coastguard Worker        both ""
4268*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4269*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4270*35238bceSAndroid Build Coastguard Worker
4271*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4272*35238bceSAndroid Build Coastguard Worker
4273*35238bceSAndroid Build Coastguard Worker            void main()
4274*35238bceSAndroid Build Coastguard Worker            {
4275*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4276*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2);
4277*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4278*35238bceSAndroid Build Coastguard Worker            }
4279*35238bceSAndroid Build Coastguard Worker        ""
4280*35238bceSAndroid Build Coastguard Worker    end
4281*35238bceSAndroid Build Coastguard Worker
4282*35238bceSAndroid Build Coastguard Worker    case int_ivec2_int_to_ivec4
4283*35238bceSAndroid Build Coastguard Worker        values
4284*35238bceSAndroid Build Coastguard Worker        {
4285*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -66 | 8 | -192 | 255 | 5 | -12 | 0 | 2 | 1 | 11 ];
4286*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(0, 0) ];
4287*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 8 | 2 | 11 | -192 | 255 | -12 | 0 | -66 | 1 | 5 ];
4288*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(-66, 0, 0, 8) | ivec4(8, 0, 0, 2) | ivec4(-192, -32, 64, 11) | ivec4(255, -32, 64, -192) | ivec4(5, 1, 1, 255) | ivec4(-12, 0, 0, -12) | ivec4(0, 1, 1, 0) | ivec4(2, 0, -2, -66) | ivec4(1, 0, -2, 1) | ivec4(11, 0, 0, 5) ];
4289*35238bceSAndroid Build Coastguard Worker        }
4290*35238bceSAndroid Build Coastguard Worker
4291*35238bceSAndroid Build Coastguard Worker        both ""
4292*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4293*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4294*35238bceSAndroid Build Coastguard Worker
4295*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4296*35238bceSAndroid Build Coastguard Worker
4297*35238bceSAndroid Build Coastguard Worker            void main()
4298*35238bceSAndroid Build Coastguard Worker            {
4299*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4300*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2);
4301*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4302*35238bceSAndroid Build Coastguard Worker            }
4303*35238bceSAndroid Build Coastguard Worker        ""
4304*35238bceSAndroid Build Coastguard Worker    end
4305*35238bceSAndroid Build Coastguard Worker
4306*35238bceSAndroid Build Coastguard Worker    case int_ivec2_int_to_bvec4
4307*35238bceSAndroid Build Coastguard Worker        values
4308*35238bceSAndroid Build Coastguard Worker        {
4309*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -66 | 8 | -192 | 255 | 5 | -12 | 0 | 2 | 1 | 11 ];
4310*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, 0) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(0, 0) ];
4311*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 8 | 2 | 11 | -192 | 255 | -12 | 0 | -66 | 1 | 5 ];
4312*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, false, false, true) | bvec4(true, false, false, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(true, false, false, true) | bvec4(false, true, true, false) | bvec4(true, false, true, true) | bvec4(true, false, true, true) | bvec4(true, false, false, true) ];
4313*35238bceSAndroid Build Coastguard Worker        }
4314*35238bceSAndroid Build Coastguard Worker
4315*35238bceSAndroid Build Coastguard Worker        both ""
4316*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4317*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4318*35238bceSAndroid Build Coastguard Worker
4319*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4320*35238bceSAndroid Build Coastguard Worker
4321*35238bceSAndroid Build Coastguard Worker            void main()
4322*35238bceSAndroid Build Coastguard Worker            {
4323*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4324*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2);
4325*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4326*35238bceSAndroid Build Coastguard Worker            }
4327*35238bceSAndroid Build Coastguard Worker        ""
4328*35238bceSAndroid Build Coastguard Worker    end
4329*35238bceSAndroid Build Coastguard Worker
4330*35238bceSAndroid Build Coastguard Worker    case bool_float_ivec2_to_vec4
4331*35238bceSAndroid Build Coastguard Worker        values
4332*35238bceSAndroid Build Coastguard Worker        {
4333*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | true | false | false | false | false ];
4334*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 0.0 | 3.5 | -8.25 | 36.8125 | -20.125 | 1.0 | -0.5 ];
4335*35238bceSAndroid Build Coastguard Worker            input ivec2 in2 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(1, 1) | ivec2(0, 0) ];
4336*35238bceSAndroid Build Coastguard Worker            output vec4 out0 = [ vec4(1.0, 2.0, 0.0, 0.0) | vec4(1.0, 0.0, 0.0, 0.0) | vec4(1.0, 3.5, -32.0, 64.0) | vec4(1.0, -8.25, 1.0, 1.0) | vec4(0.0, 36.8125, 0.0, -2.0) | vec4(0.0, -20.125, 0.0, -2.0) | vec4(0.0, 1.0, 1.0, 1.0) | vec4(0.0, -0.5, 0.0, 0.0) ];
4337*35238bceSAndroid Build Coastguard Worker        }
4338*35238bceSAndroid Build Coastguard Worker
4339*35238bceSAndroid Build Coastguard Worker        both ""
4340*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4341*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4342*35238bceSAndroid Build Coastguard Worker
4343*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4344*35238bceSAndroid Build Coastguard Worker
4345*35238bceSAndroid Build Coastguard Worker            void main()
4346*35238bceSAndroid Build Coastguard Worker            {
4347*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4348*35238bceSAndroid Build Coastguard Worker                out0 = vec4(in0, in1, in2);
4349*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4350*35238bceSAndroid Build Coastguard Worker            }
4351*35238bceSAndroid Build Coastguard Worker        ""
4352*35238bceSAndroid Build Coastguard Worker    end
4353*35238bceSAndroid Build Coastguard Worker
4354*35238bceSAndroid Build Coastguard Worker    case bool_float_ivec2_to_ivec4
4355*35238bceSAndroid Build Coastguard Worker        values
4356*35238bceSAndroid Build Coastguard Worker        {
4357*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | true | false | false | false | false ];
4358*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 0.0 | 3.5 | -8.25 | 36.8125 | -20.125 | 1.0 | -0.5 ];
4359*35238bceSAndroid Build Coastguard Worker            input ivec2 in2 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(1, 1) | ivec2(0, 0) ];
4360*35238bceSAndroid Build Coastguard Worker            output ivec4 out0 = [ ivec4(1, 2, 0, 0) | ivec4(1, 0, 0, 0) | ivec4(1, 3, -32, 64) | ivec4(1, -8, 1, 1) | ivec4(0, 36, 0, -2) | ivec4(0, -20, 0, -2) | ivec4(0, 1, 1, 1) | ivec4(0, 0, 0, 0) ];
4361*35238bceSAndroid Build Coastguard Worker        }
4362*35238bceSAndroid Build Coastguard Worker
4363*35238bceSAndroid Build Coastguard Worker        both ""
4364*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4365*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4366*35238bceSAndroid Build Coastguard Worker
4367*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4368*35238bceSAndroid Build Coastguard Worker
4369*35238bceSAndroid Build Coastguard Worker            void main()
4370*35238bceSAndroid Build Coastguard Worker            {
4371*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4372*35238bceSAndroid Build Coastguard Worker                out0 = ivec4(in0, in1, in2);
4373*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4374*35238bceSAndroid Build Coastguard Worker            }
4375*35238bceSAndroid Build Coastguard Worker        ""
4376*35238bceSAndroid Build Coastguard Worker    end
4377*35238bceSAndroid Build Coastguard Worker
4378*35238bceSAndroid Build Coastguard Worker    case bool_float_ivec2_to_bvec4
4379*35238bceSAndroid Build Coastguard Worker        values
4380*35238bceSAndroid Build Coastguard Worker        {
4381*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | true | false | false | false | false ];
4382*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 0.0 | 3.5 | -8.25 | 36.8125 | -20.125 | 1.0 | -0.5 ];
4383*35238bceSAndroid Build Coastguard Worker            input ivec2 in2 = [ ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, -2) | ivec2(1, 1) | ivec2(0, 0) ];
4384*35238bceSAndroid Build Coastguard Worker            output bvec4 out0 = [ bvec4(true, true, false, false) | bvec4(true, false, false, false) | bvec4(true, true, true, true) | bvec4(true, true, true, true) | bvec4(false, true, false, true) | bvec4(false, true, false, true) | bvec4(false, true, true, true) | bvec4(false, true, false, false) ];
4385*35238bceSAndroid Build Coastguard Worker        }
4386*35238bceSAndroid Build Coastguard Worker
4387*35238bceSAndroid Build Coastguard Worker        both ""
4388*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4389*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4390*35238bceSAndroid Build Coastguard Worker
4391*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4392*35238bceSAndroid Build Coastguard Worker
4393*35238bceSAndroid Build Coastguard Worker            void main()
4394*35238bceSAndroid Build Coastguard Worker            {
4395*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4396*35238bceSAndroid Build Coastguard Worker                out0 = bvec4(in0, in1, in2);
4397*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4398*35238bceSAndroid Build Coastguard Worker            }
4399*35238bceSAndroid Build Coastguard Worker        ""
4400*35238bceSAndroid Build Coastguard Worker    end
4401*35238bceSAndroid Build Coastguard Worker
4402*35238bceSAndroid Build Coastguard Worker    case float_float_float_to_vec3
4403*35238bceSAndroid Build Coastguard Worker        values
4404*35238bceSAndroid Build Coastguard Worker        {
4405*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 3.5 | 2.0 | -20.125 | -8.25 | 36.8125 | 1.0 | 0.0 | -0.5 ];
4406*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -0.5 | 1.0 | 2.0 | -20.125 | 0.0 | -8.25 | 36.8125 | 3.5 ];
4407*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 0.0 | 1.0 | 3.5 | -8.25 | -0.5 | 36.8125 | -20.125 | 2.0 ];
4408*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(3.5, -0.5, 0.0) | vec3(2.0, 1.0, 1.0) | vec3(-20.125, 2.0, 3.5) | vec3(-8.25, -20.125, -8.25) | vec3(36.8125, 0.0, -0.5) | vec3(1.0, -8.25, 36.8125) | vec3(0.0, 36.8125, -20.125) | vec3(-0.5, 3.5, 2.0) ];
4409*35238bceSAndroid Build Coastguard Worker        }
4410*35238bceSAndroid Build Coastguard Worker
4411*35238bceSAndroid Build Coastguard Worker        both ""
4412*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4413*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4414*35238bceSAndroid Build Coastguard Worker
4415*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4416*35238bceSAndroid Build Coastguard Worker
4417*35238bceSAndroid Build Coastguard Worker            void main()
4418*35238bceSAndroid Build Coastguard Worker            {
4419*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4420*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1, in2);
4421*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4422*35238bceSAndroid Build Coastguard Worker            }
4423*35238bceSAndroid Build Coastguard Worker        ""
4424*35238bceSAndroid Build Coastguard Worker    end
4425*35238bceSAndroid Build Coastguard Worker
4426*35238bceSAndroid Build Coastguard Worker    case float_float_float_to_ivec3
4427*35238bceSAndroid Build Coastguard Worker        values
4428*35238bceSAndroid Build Coastguard Worker        {
4429*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 3.5 | 2.0 | -20.125 | -8.25 | 36.8125 | 1.0 | 0.0 | -0.5 ];
4430*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -0.5 | 1.0 | 2.0 | -20.125 | 0.0 | -8.25 | 36.8125 | 3.5 ];
4431*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 0.0 | 1.0 | 3.5 | -8.25 | -0.5 | 36.8125 | -20.125 | 2.0 ];
4432*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(3, 0, 0) | ivec3(2, 1, 1) | ivec3(-20, 2, 3) | ivec3(-8, -20, -8) | ivec3(36, 0, 0) | ivec3(1, -8, 36) | ivec3(0, 36, -20) | ivec3(0, 3, 2) ];
4433*35238bceSAndroid Build Coastguard Worker        }
4434*35238bceSAndroid Build Coastguard Worker
4435*35238bceSAndroid Build Coastguard Worker        both ""
4436*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4437*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4438*35238bceSAndroid Build Coastguard Worker
4439*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4440*35238bceSAndroid Build Coastguard Worker
4441*35238bceSAndroid Build Coastguard Worker            void main()
4442*35238bceSAndroid Build Coastguard Worker            {
4443*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4444*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1, in2);
4445*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4446*35238bceSAndroid Build Coastguard Worker            }
4447*35238bceSAndroid Build Coastguard Worker        ""
4448*35238bceSAndroid Build Coastguard Worker    end
4449*35238bceSAndroid Build Coastguard Worker
4450*35238bceSAndroid Build Coastguard Worker    case float_float_float_to_bvec3
4451*35238bceSAndroid Build Coastguard Worker        values
4452*35238bceSAndroid Build Coastguard Worker        {
4453*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 3.5 | 2.0 | -20.125 | -8.25 | 36.8125 | 1.0 | 0.0 | -0.5 ];
4454*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -0.5 | 1.0 | 2.0 | -20.125 | 0.0 | -8.25 | 36.8125 | 3.5 ];
4455*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 0.0 | 1.0 | 3.5 | -8.25 | -0.5 | 36.8125 | -20.125 | 2.0 ];
4456*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, true, false) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, false, true) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, true) ];
4457*35238bceSAndroid Build Coastguard Worker        }
4458*35238bceSAndroid Build Coastguard Worker
4459*35238bceSAndroid Build Coastguard Worker        both ""
4460*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4461*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4462*35238bceSAndroid Build Coastguard Worker
4463*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4464*35238bceSAndroid Build Coastguard Worker
4465*35238bceSAndroid Build Coastguard Worker            void main()
4466*35238bceSAndroid Build Coastguard Worker            {
4467*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4468*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1, in2);
4469*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4470*35238bceSAndroid Build Coastguard Worker            }
4471*35238bceSAndroid Build Coastguard Worker        ""
4472*35238bceSAndroid Build Coastguard Worker    end
4473*35238bceSAndroid Build Coastguard Worker
4474*35238bceSAndroid Build Coastguard Worker    case int_int_int_to_vec3
4475*35238bceSAndroid Build Coastguard Worker        values
4476*35238bceSAndroid Build Coastguard Worker        {
4477*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 2 | 1 | 5 | 255 | 8 | -66 | 11 | -12 | -192 ];
4478*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 8 | 11 | -12 | -192 | 1 | -66 | 5 | 255 | 0 ];
4479*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | -66 | 8 | 1 | 2 | 5 | 11 | 255 | 0 ];
4480*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 2.0, -192.0) | vec3(2.0, 8.0, -12.0) | vec3(1.0, 11.0, -66.0) | vec3(5.0, -12.0, 8.0) | vec3(255.0, -192.0, 1.0) | vec3(8.0, 1.0, 2.0) | vec3(-66.0, -66.0, 5.0) | vec3(11.0, 5.0, 11.0) | vec3(-12.0, 255.0, 255.0) | vec3(-192.0, 0.0, 0.0) ];
4481*35238bceSAndroid Build Coastguard Worker        }
4482*35238bceSAndroid Build Coastguard Worker
4483*35238bceSAndroid Build Coastguard Worker        both ""
4484*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4485*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4486*35238bceSAndroid Build Coastguard Worker
4487*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4488*35238bceSAndroid Build Coastguard Worker
4489*35238bceSAndroid Build Coastguard Worker            void main()
4490*35238bceSAndroid Build Coastguard Worker            {
4491*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4492*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1, in2);
4493*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4494*35238bceSAndroid Build Coastguard Worker            }
4495*35238bceSAndroid Build Coastguard Worker        ""
4496*35238bceSAndroid Build Coastguard Worker    end
4497*35238bceSAndroid Build Coastguard Worker
4498*35238bceSAndroid Build Coastguard Worker    case int_int_int_to_ivec3
4499*35238bceSAndroid Build Coastguard Worker        values
4500*35238bceSAndroid Build Coastguard Worker        {
4501*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 2 | 1 | 5 | 255 | 8 | -66 | 11 | -12 | -192 ];
4502*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 8 | 11 | -12 | -192 | 1 | -66 | 5 | 255 | 0 ];
4503*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | -66 | 8 | 1 | 2 | 5 | 11 | 255 | 0 ];
4504*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 2, -192) | ivec3(2, 8, -12) | ivec3(1, 11, -66) | ivec3(5, -12, 8) | ivec3(255, -192, 1) | ivec3(8, 1, 2) | ivec3(-66, -66, 5) | ivec3(11, 5, 11) | ivec3(-12, 255, 255) | ivec3(-192, 0, 0) ];
4505*35238bceSAndroid Build Coastguard Worker        }
4506*35238bceSAndroid Build Coastguard Worker
4507*35238bceSAndroid Build Coastguard Worker        both ""
4508*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4509*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4510*35238bceSAndroid Build Coastguard Worker
4511*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4512*35238bceSAndroid Build Coastguard Worker
4513*35238bceSAndroid Build Coastguard Worker            void main()
4514*35238bceSAndroid Build Coastguard Worker            {
4515*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4516*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1, in2);
4517*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4518*35238bceSAndroid Build Coastguard Worker            }
4519*35238bceSAndroid Build Coastguard Worker        ""
4520*35238bceSAndroid Build Coastguard Worker    end
4521*35238bceSAndroid Build Coastguard Worker
4522*35238bceSAndroid Build Coastguard Worker    case int_int_int_to_bvec3
4523*35238bceSAndroid Build Coastguard Worker        values
4524*35238bceSAndroid Build Coastguard Worker        {
4525*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 0 | 2 | 1 | 5 | 255 | 8 | -66 | 11 | -12 | -192 ];
4526*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 2 | 8 | 11 | -12 | -192 | 1 | -66 | 5 | 255 | 0 ];
4527*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -192 | -12 | -66 | 8 | 1 | 2 | 5 | 11 | 255 | 0 ];
4528*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, true, true) | bvec3(true, false, false) ];
4529*35238bceSAndroid Build Coastguard Worker        }
4530*35238bceSAndroid Build Coastguard Worker
4531*35238bceSAndroid Build Coastguard Worker        both ""
4532*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4533*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4534*35238bceSAndroid Build Coastguard Worker
4535*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4536*35238bceSAndroid Build Coastguard Worker
4537*35238bceSAndroid Build Coastguard Worker            void main()
4538*35238bceSAndroid Build Coastguard Worker            {
4539*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4540*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1, in2);
4541*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4542*35238bceSAndroid Build Coastguard Worker            }
4543*35238bceSAndroid Build Coastguard Worker        ""
4544*35238bceSAndroid Build Coastguard Worker    end
4545*35238bceSAndroid Build Coastguard Worker
4546*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_to_vec3
4547*35238bceSAndroid Build Coastguard Worker        values
4548*35238bceSAndroid Build Coastguard Worker        {
4549*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true ];
4550*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
4551*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ false | true ];
4552*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 1.0, 1.0) ];
4553*35238bceSAndroid Build Coastguard Worker        }
4554*35238bceSAndroid Build Coastguard Worker
4555*35238bceSAndroid Build Coastguard Worker        both ""
4556*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4557*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4558*35238bceSAndroid Build Coastguard Worker
4559*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4560*35238bceSAndroid Build Coastguard Worker
4561*35238bceSAndroid Build Coastguard Worker            void main()
4562*35238bceSAndroid Build Coastguard Worker            {
4563*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4564*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1, in2);
4565*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4566*35238bceSAndroid Build Coastguard Worker            }
4567*35238bceSAndroid Build Coastguard Worker        ""
4568*35238bceSAndroid Build Coastguard Worker    end
4569*35238bceSAndroid Build Coastguard Worker
4570*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_to_ivec3
4571*35238bceSAndroid Build Coastguard Worker        values
4572*35238bceSAndroid Build Coastguard Worker        {
4573*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true ];
4574*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
4575*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ false | true ];
4576*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) ];
4577*35238bceSAndroid Build Coastguard Worker        }
4578*35238bceSAndroid Build Coastguard Worker
4579*35238bceSAndroid Build Coastguard Worker        both ""
4580*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4581*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4582*35238bceSAndroid Build Coastguard Worker
4583*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4584*35238bceSAndroid Build Coastguard Worker
4585*35238bceSAndroid Build Coastguard Worker            void main()
4586*35238bceSAndroid Build Coastguard Worker            {
4587*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4588*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1, in2);
4589*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4590*35238bceSAndroid Build Coastguard Worker            }
4591*35238bceSAndroid Build Coastguard Worker        ""
4592*35238bceSAndroid Build Coastguard Worker    end
4593*35238bceSAndroid Build Coastguard Worker
4594*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_to_bvec3
4595*35238bceSAndroid Build Coastguard Worker        values
4596*35238bceSAndroid Build Coastguard Worker        {
4597*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true ];
4598*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
4599*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ false | true ];
4600*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, true, true) ];
4601*35238bceSAndroid Build Coastguard Worker        }
4602*35238bceSAndroid Build Coastguard Worker
4603*35238bceSAndroid Build Coastguard Worker        both ""
4604*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4605*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4606*35238bceSAndroid Build Coastguard Worker
4607*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4608*35238bceSAndroid Build Coastguard Worker
4609*35238bceSAndroid Build Coastguard Worker            void main()
4610*35238bceSAndroid Build Coastguard Worker            {
4611*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4612*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1, in2);
4613*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4614*35238bceSAndroid Build Coastguard Worker            }
4615*35238bceSAndroid Build Coastguard Worker        ""
4616*35238bceSAndroid Build Coastguard Worker    end
4617*35238bceSAndroid Build Coastguard Worker
4618*35238bceSAndroid Build Coastguard Worker    case bool_float_int_to_vec3
4619*35238bceSAndroid Build Coastguard Worker        values
4620*35238bceSAndroid Build Coastguard Worker        {
4621*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | false | true | false | true | false | true ];
4622*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 1.0 | -0.5 | -8.25 | 3.5 | -20.125 | 1.0 | 0.0 | 36.8125 ];
4623*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -12 | -192 | 2 | 5 | -66 | 255 | 11 | 0 | 8 | 1 ];
4624*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, -12.0) | vec3(1.0, 2.0, -192.0) | vec3(0.0, 1.0, 2.0) | vec3(1.0, -0.5, 5.0) | vec3(0.0, -8.25, -66.0) | vec3(1.0, 3.5, 255.0) | vec3(0.0, -20.125, 11.0) | vec3(1.0, 1.0, 0.0) | vec3(0.0, 0.0, 8.0) | vec3(1.0, 36.8125, 1.0) ];
4625*35238bceSAndroid Build Coastguard Worker        }
4626*35238bceSAndroid Build Coastguard Worker
4627*35238bceSAndroid Build Coastguard Worker        both ""
4628*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4629*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4630*35238bceSAndroid Build Coastguard Worker
4631*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4632*35238bceSAndroid Build Coastguard Worker
4633*35238bceSAndroid Build Coastguard Worker            void main()
4634*35238bceSAndroid Build Coastguard Worker            {
4635*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4636*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1, in2);
4637*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4638*35238bceSAndroid Build Coastguard Worker            }
4639*35238bceSAndroid Build Coastguard Worker        ""
4640*35238bceSAndroid Build Coastguard Worker    end
4641*35238bceSAndroid Build Coastguard Worker
4642*35238bceSAndroid Build Coastguard Worker    case bool_float_int_to_ivec3
4643*35238bceSAndroid Build Coastguard Worker        values
4644*35238bceSAndroid Build Coastguard Worker        {
4645*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | false | true | false | true | false | true ];
4646*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 1.0 | -0.5 | -8.25 | 3.5 | -20.125 | 1.0 | 0.0 | 36.8125 ];
4647*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -12 | -192 | 2 | 5 | -66 | 255 | 11 | 0 | 8 | 1 ];
4648*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, -12) | ivec3(1, 2, -192) | ivec3(0, 1, 2) | ivec3(1, 0, 5) | ivec3(0, -8, -66) | ivec3(1, 3, 255) | ivec3(0, -20, 11) | ivec3(1, 1, 0) | ivec3(0, 0, 8) | ivec3(1, 36, 1) ];
4649*35238bceSAndroid Build Coastguard Worker        }
4650*35238bceSAndroid Build Coastguard Worker
4651*35238bceSAndroid Build Coastguard Worker        both ""
4652*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4653*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4654*35238bceSAndroid Build Coastguard Worker
4655*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4656*35238bceSAndroid Build Coastguard Worker
4657*35238bceSAndroid Build Coastguard Worker            void main()
4658*35238bceSAndroid Build Coastguard Worker            {
4659*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4660*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1, in2);
4661*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4662*35238bceSAndroid Build Coastguard Worker            }
4663*35238bceSAndroid Build Coastguard Worker        ""
4664*35238bceSAndroid Build Coastguard Worker    end
4665*35238bceSAndroid Build Coastguard Worker
4666*35238bceSAndroid Build Coastguard Worker    case bool_float_int_to_bvec3
4667*35238bceSAndroid Build Coastguard Worker        values
4668*35238bceSAndroid Build Coastguard Worker        {
4669*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | false | true | false | true | false | true ];
4670*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 2.0 | 1.0 | -0.5 | -8.25 | 3.5 | -20.125 | 1.0 | 0.0 | 36.8125 ];
4671*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -12 | -192 | 2 | 5 | -66 | 255 | 11 | 0 | 8 | 1 ];
4672*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, true) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, true) | bvec3(false, true, true) | bvec3(true, true, false) | bvec3(false, false, true) | bvec3(true, true, true) ];
4673*35238bceSAndroid Build Coastguard Worker        }
4674*35238bceSAndroid Build Coastguard Worker
4675*35238bceSAndroid Build Coastguard Worker        both ""
4676*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4677*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4678*35238bceSAndroid Build Coastguard Worker
4679*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4680*35238bceSAndroid Build Coastguard Worker
4681*35238bceSAndroid Build Coastguard Worker            void main()
4682*35238bceSAndroid Build Coastguard Worker            {
4683*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4684*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1, in2);
4685*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4686*35238bceSAndroid Build Coastguard Worker            }
4687*35238bceSAndroid Build Coastguard Worker        ""
4688*35238bceSAndroid Build Coastguard Worker    end
4689*35238bceSAndroid Build Coastguard Worker
4690*35238bceSAndroid Build Coastguard Worker    case vec2_bool_to_vec3
4691*35238bceSAndroid Build Coastguard Worker        values
4692*35238bceSAndroid Build Coastguard Worker        {
4693*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) ];
4694*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true | false | true | true ];
4695*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(-0.75, -0.0322580645161, 0.0) | vec3(1.0, 1.25, 1.0) | vec3(-0.5, -2.25, 0.0) | vec3(0.0, 0.5, 1.0) | vec3(-32.0, 64.0, 1.0) ];
4696*35238bceSAndroid Build Coastguard Worker        }
4697*35238bceSAndroid Build Coastguard Worker
4698*35238bceSAndroid Build Coastguard Worker        both ""
4699*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4700*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4701*35238bceSAndroid Build Coastguard Worker
4702*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4703*35238bceSAndroid Build Coastguard Worker
4704*35238bceSAndroid Build Coastguard Worker            void main()
4705*35238bceSAndroid Build Coastguard Worker            {
4706*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4707*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1);
4708*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4709*35238bceSAndroid Build Coastguard Worker            }
4710*35238bceSAndroid Build Coastguard Worker        ""
4711*35238bceSAndroid Build Coastguard Worker    end
4712*35238bceSAndroid Build Coastguard Worker
4713*35238bceSAndroid Build Coastguard Worker    case vec2_bool_to_ivec3
4714*35238bceSAndroid Build Coastguard Worker        values
4715*35238bceSAndroid Build Coastguard Worker        {
4716*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) ];
4717*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true | false | true | true ];
4718*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, 0) | ivec3(0, 0, 1) | ivec3(-32, 64, 1) ];
4719*35238bceSAndroid Build Coastguard Worker        }
4720*35238bceSAndroid Build Coastguard Worker
4721*35238bceSAndroid Build Coastguard Worker        both ""
4722*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4723*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4724*35238bceSAndroid Build Coastguard Worker
4725*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4726*35238bceSAndroid Build Coastguard Worker
4727*35238bceSAndroid Build Coastguard Worker            void main()
4728*35238bceSAndroid Build Coastguard Worker            {
4729*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4730*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1);
4731*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4732*35238bceSAndroid Build Coastguard Worker            }
4733*35238bceSAndroid Build Coastguard Worker        ""
4734*35238bceSAndroid Build Coastguard Worker    end
4735*35238bceSAndroid Build Coastguard Worker
4736*35238bceSAndroid Build Coastguard Worker    case vec2_bool_to_bvec3
4737*35238bceSAndroid Build Coastguard Worker        values
4738*35238bceSAndroid Build Coastguard Worker        {
4739*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) ];
4740*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true | false | true | true ];
4741*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, true, false) | bvec3(true, true, true) | bvec3(true, true, false) | bvec3(false, true, true) | bvec3(true, true, true) ];
4742*35238bceSAndroid Build Coastguard Worker        }
4743*35238bceSAndroid Build Coastguard Worker
4744*35238bceSAndroid Build Coastguard Worker        both ""
4745*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4746*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4747*35238bceSAndroid Build Coastguard Worker
4748*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4749*35238bceSAndroid Build Coastguard Worker
4750*35238bceSAndroid Build Coastguard Worker            void main()
4751*35238bceSAndroid Build Coastguard Worker            {
4752*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4753*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1);
4754*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4755*35238bceSAndroid Build Coastguard Worker            }
4756*35238bceSAndroid Build Coastguard Worker        ""
4757*35238bceSAndroid Build Coastguard Worker    end
4758*35238bceSAndroid Build Coastguard Worker
4759*35238bceSAndroid Build Coastguard Worker    case bvec2_float_to_vec3
4760*35238bceSAndroid Build Coastguard Worker        values
4761*35238bceSAndroid Build Coastguard Worker        {
4762*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
4763*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 36.8125 | 0.0 | -20.125 | 1.0 | -0.5 | -8.25 | 3.5 ];
4764*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(1.0, 0.0, 2.0) | vec3(0.0, 0.0, 36.8125) | vec3(1.0, 0.0, 0.0) | vec3(0.0, 1.0, -20.125) | vec3(0.0, 0.0, 1.0) | vec3(0.0, 1.0, -0.5) | vec3(0.0, 0.0, -8.25) | vec3(1.0, 1.0, 3.5) ];
4765*35238bceSAndroid Build Coastguard Worker        }
4766*35238bceSAndroid Build Coastguard Worker
4767*35238bceSAndroid Build Coastguard Worker        both ""
4768*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4769*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4770*35238bceSAndroid Build Coastguard Worker
4771*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4772*35238bceSAndroid Build Coastguard Worker
4773*35238bceSAndroid Build Coastguard Worker            void main()
4774*35238bceSAndroid Build Coastguard Worker            {
4775*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4776*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1);
4777*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4778*35238bceSAndroid Build Coastguard Worker            }
4779*35238bceSAndroid Build Coastguard Worker        ""
4780*35238bceSAndroid Build Coastguard Worker    end
4781*35238bceSAndroid Build Coastguard Worker
4782*35238bceSAndroid Build Coastguard Worker    case bvec2_float_to_ivec3
4783*35238bceSAndroid Build Coastguard Worker        values
4784*35238bceSAndroid Build Coastguard Worker        {
4785*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
4786*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 36.8125 | 0.0 | -20.125 | 1.0 | -0.5 | -8.25 | 3.5 ];
4787*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(1, 0, 2) | ivec3(0, 0, 36) | ivec3(1, 0, 0) | ivec3(0, 1, -20) | ivec3(0, 0, 1) | ivec3(0, 1, 0) | ivec3(0, 0, -8) | ivec3(1, 1, 3) ];
4788*35238bceSAndroid Build Coastguard Worker        }
4789*35238bceSAndroid Build Coastguard Worker
4790*35238bceSAndroid Build Coastguard Worker        both ""
4791*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4792*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4793*35238bceSAndroid Build Coastguard Worker
4794*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4795*35238bceSAndroid Build Coastguard Worker
4796*35238bceSAndroid Build Coastguard Worker            void main()
4797*35238bceSAndroid Build Coastguard Worker            {
4798*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4799*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1);
4800*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4801*35238bceSAndroid Build Coastguard Worker            }
4802*35238bceSAndroid Build Coastguard Worker        ""
4803*35238bceSAndroid Build Coastguard Worker    end
4804*35238bceSAndroid Build Coastguard Worker
4805*35238bceSAndroid Build Coastguard Worker    case bvec2_float_to_bvec3
4806*35238bceSAndroid Build Coastguard Worker        values
4807*35238bceSAndroid Build Coastguard Worker        {
4808*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(true, false) | bvec2(false, true) | bvec2(false, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
4809*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 2.0 | 36.8125 | 0.0 | -20.125 | 1.0 | -0.5 | -8.25 | 3.5 ];
4810*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(true, false, true) | bvec3(false, false, true) | bvec3(true, false, false) | bvec3(false, true, true) | bvec3(false, false, true) | bvec3(false, true, true) | bvec3(false, false, true) | bvec3(true, true, true) ];
4811*35238bceSAndroid Build Coastguard Worker        }
4812*35238bceSAndroid Build Coastguard Worker
4813*35238bceSAndroid Build Coastguard Worker        both ""
4814*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4815*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4816*35238bceSAndroid Build Coastguard Worker
4817*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4818*35238bceSAndroid Build Coastguard Worker
4819*35238bceSAndroid Build Coastguard Worker            void main()
4820*35238bceSAndroid Build Coastguard Worker            {
4821*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4822*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1);
4823*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4824*35238bceSAndroid Build Coastguard Worker            }
4825*35238bceSAndroid Build Coastguard Worker        ""
4826*35238bceSAndroid Build Coastguard Worker    end
4827*35238bceSAndroid Build Coastguard Worker
4828*35238bceSAndroid Build Coastguard Worker    case bvec2_int_to_vec3
4829*35238bceSAndroid Build Coastguard Worker        values
4830*35238bceSAndroid Build Coastguard Worker        {
4831*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(true, false) | bvec2(true, false) | bvec2(false, false) ];
4832*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 0 | 255 | 1 | 2 | 8 | 11 | -192 | 5 | -12 | -66 ];
4833*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 1.0, 0.0) | vec3(0.0, 1.0, 255.0) | vec3(1.0, 1.0, 1.0) | vec3(0.0, 0.0, 2.0) | vec3(0.0, 0.0, 8.0) | vec3(0.0, 0.0, 11.0) | vec3(1.0, 1.0, -192.0) | vec3(1.0, 0.0, 5.0) | vec3(1.0, 0.0, -12.0) | vec3(0.0, 0.0, -66.0) ];
4834*35238bceSAndroid Build Coastguard Worker        }
4835*35238bceSAndroid Build Coastguard Worker
4836*35238bceSAndroid Build Coastguard Worker        both ""
4837*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4838*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4839*35238bceSAndroid Build Coastguard Worker
4840*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4841*35238bceSAndroid Build Coastguard Worker
4842*35238bceSAndroid Build Coastguard Worker            void main()
4843*35238bceSAndroid Build Coastguard Worker            {
4844*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4845*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1);
4846*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4847*35238bceSAndroid Build Coastguard Worker            }
4848*35238bceSAndroid Build Coastguard Worker        ""
4849*35238bceSAndroid Build Coastguard Worker    end
4850*35238bceSAndroid Build Coastguard Worker
4851*35238bceSAndroid Build Coastguard Worker    case bvec2_int_to_ivec3
4852*35238bceSAndroid Build Coastguard Worker        values
4853*35238bceSAndroid Build Coastguard Worker        {
4854*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(true, false) | bvec2(true, false) | bvec2(false, false) ];
4855*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 0 | 255 | 1 | 2 | 8 | 11 | -192 | 5 | -12 | -66 ];
4856*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 1, 0) | ivec3(0, 1, 255) | ivec3(1, 1, 1) | ivec3(0, 0, 2) | ivec3(0, 0, 8) | ivec3(0, 0, 11) | ivec3(1, 1, -192) | ivec3(1, 0, 5) | ivec3(1, 0, -12) | ivec3(0, 0, -66) ];
4857*35238bceSAndroid Build Coastguard Worker        }
4858*35238bceSAndroid Build Coastguard Worker
4859*35238bceSAndroid Build Coastguard Worker        both ""
4860*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4861*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4862*35238bceSAndroid Build Coastguard Worker
4863*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4864*35238bceSAndroid Build Coastguard Worker
4865*35238bceSAndroid Build Coastguard Worker            void main()
4866*35238bceSAndroid Build Coastguard Worker            {
4867*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4868*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1);
4869*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4870*35238bceSAndroid Build Coastguard Worker            }
4871*35238bceSAndroid Build Coastguard Worker        ""
4872*35238bceSAndroid Build Coastguard Worker    end
4873*35238bceSAndroid Build Coastguard Worker
4874*35238bceSAndroid Build Coastguard Worker    case bvec2_int_to_bvec3
4875*35238bceSAndroid Build Coastguard Worker        values
4876*35238bceSAndroid Build Coastguard Worker        {
4877*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(false, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) | bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(true, false) | bvec2(true, false) | bvec2(false, false) ];
4878*35238bceSAndroid Build Coastguard Worker            input int in1 = [ 0 | 255 | 1 | 2 | 8 | 11 | -192 | 5 | -12 | -66 ];
4879*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, true, false) | bvec3(false, true, true) | bvec3(true, true, true) | bvec3(false, false, true) | bvec3(false, false, true) | bvec3(false, false, true) | bvec3(true, true, true) | bvec3(true, false, true) | bvec3(true, false, true) | bvec3(false, false, true) ];
4880*35238bceSAndroid Build Coastguard Worker        }
4881*35238bceSAndroid Build Coastguard Worker
4882*35238bceSAndroid Build Coastguard Worker        both ""
4883*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4884*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4885*35238bceSAndroid Build Coastguard Worker
4886*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4887*35238bceSAndroid Build Coastguard Worker
4888*35238bceSAndroid Build Coastguard Worker            void main()
4889*35238bceSAndroid Build Coastguard Worker            {
4890*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4891*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1);
4892*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4893*35238bceSAndroid Build Coastguard Worker            }
4894*35238bceSAndroid Build Coastguard Worker        ""
4895*35238bceSAndroid Build Coastguard Worker    end
4896*35238bceSAndroid Build Coastguard Worker
4897*35238bceSAndroid Build Coastguard Worker    case bool_ivec2_to_vec3
4898*35238bceSAndroid Build Coastguard Worker        values
4899*35238bceSAndroid Build Coastguard Worker        {
4900*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | true ];
4901*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) ];
4902*35238bceSAndroid Build Coastguard Worker            output vec3 out0 = [ vec3(0.0, 0.0, 0.0) | vec3(1.0, 0.0, -2.0) | vec3(0.0, 0.0, 0.0) | vec3(1.0, -32.0, 64.0) | vec3(1.0, 1.0, 1.0) ];
4903*35238bceSAndroid Build Coastguard Worker        }
4904*35238bceSAndroid Build Coastguard Worker
4905*35238bceSAndroid Build Coastguard Worker        both ""
4906*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4907*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4908*35238bceSAndroid Build Coastguard Worker
4909*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4910*35238bceSAndroid Build Coastguard Worker
4911*35238bceSAndroid Build Coastguard Worker            void main()
4912*35238bceSAndroid Build Coastguard Worker            {
4913*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4914*35238bceSAndroid Build Coastguard Worker                out0 = vec3(in0, in1);
4915*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4916*35238bceSAndroid Build Coastguard Worker            }
4917*35238bceSAndroid Build Coastguard Worker        ""
4918*35238bceSAndroid Build Coastguard Worker    end
4919*35238bceSAndroid Build Coastguard Worker
4920*35238bceSAndroid Build Coastguard Worker    case bool_ivec2_to_ivec3
4921*35238bceSAndroid Build Coastguard Worker        values
4922*35238bceSAndroid Build Coastguard Worker        {
4923*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | true ];
4924*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) ];
4925*35238bceSAndroid Build Coastguard Worker            output ivec3 out0 = [ ivec3(0, 0, 0) | ivec3(1, 0, -2) | ivec3(0, 0, 0) | ivec3(1, -32, 64) | ivec3(1, 1, 1) ];
4926*35238bceSAndroid Build Coastguard Worker        }
4927*35238bceSAndroid Build Coastguard Worker
4928*35238bceSAndroid Build Coastguard Worker        both ""
4929*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4930*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4931*35238bceSAndroid Build Coastguard Worker
4932*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4933*35238bceSAndroid Build Coastguard Worker
4934*35238bceSAndroid Build Coastguard Worker            void main()
4935*35238bceSAndroid Build Coastguard Worker            {
4936*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4937*35238bceSAndroid Build Coastguard Worker                out0 = ivec3(in0, in1);
4938*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4939*35238bceSAndroid Build Coastguard Worker            }
4940*35238bceSAndroid Build Coastguard Worker        ""
4941*35238bceSAndroid Build Coastguard Worker    end
4942*35238bceSAndroid Build Coastguard Worker
4943*35238bceSAndroid Build Coastguard Worker    case bool_ivec2_to_bvec3
4944*35238bceSAndroid Build Coastguard Worker        values
4945*35238bceSAndroid Build Coastguard Worker        {
4946*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | false | true | true ];
4947*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) ];
4948*35238bceSAndroid Build Coastguard Worker            output bvec3 out0 = [ bvec3(false, false, false) | bvec3(true, false, true) | bvec3(false, false, false) | bvec3(true, true, true) | bvec3(true, true, true) ];
4949*35238bceSAndroid Build Coastguard Worker        }
4950*35238bceSAndroid Build Coastguard Worker
4951*35238bceSAndroid Build Coastguard Worker        both ""
4952*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4953*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4954*35238bceSAndroid Build Coastguard Worker
4955*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4956*35238bceSAndroid Build Coastguard Worker
4957*35238bceSAndroid Build Coastguard Worker            void main()
4958*35238bceSAndroid Build Coastguard Worker            {
4959*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4960*35238bceSAndroid Build Coastguard Worker                out0 = bvec3(in0, in1);
4961*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4962*35238bceSAndroid Build Coastguard Worker            }
4963*35238bceSAndroid Build Coastguard Worker        ""
4964*35238bceSAndroid Build Coastguard Worker    end
4965*35238bceSAndroid Build Coastguard Worker
4966*35238bceSAndroid Build Coastguard Worker    case float_float_to_vec2
4967*35238bceSAndroid Build Coastguard Worker        values
4968*35238bceSAndroid Build Coastguard Worker        {
4969*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | 3.5 | -8.25 | -0.5 | 0.0 | -20.125 | 36.8125 | 1.0 ];
4970*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 3.5 | -20.125 | -0.5 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 ];
4971*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(2.0, 3.5) | vec2(3.5, -20.125) | vec2(-8.25, -0.5) | vec2(-0.5, 2.0) | vec2(0.0, 1.0) | vec2(-20.125, 0.0) | vec2(36.8125, 36.8125) | vec2(1.0, -8.25) ];
4972*35238bceSAndroid Build Coastguard Worker        }
4973*35238bceSAndroid Build Coastguard Worker
4974*35238bceSAndroid Build Coastguard Worker        both ""
4975*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4976*35238bceSAndroid Build Coastguard Worker            precision mediump int;
4977*35238bceSAndroid Build Coastguard Worker
4978*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
4979*35238bceSAndroid Build Coastguard Worker
4980*35238bceSAndroid Build Coastguard Worker            void main()
4981*35238bceSAndroid Build Coastguard Worker            {
4982*35238bceSAndroid Build Coastguard Worker                ${SETUP}
4983*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
4984*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
4985*35238bceSAndroid Build Coastguard Worker            }
4986*35238bceSAndroid Build Coastguard Worker        ""
4987*35238bceSAndroid Build Coastguard Worker    end
4988*35238bceSAndroid Build Coastguard Worker
4989*35238bceSAndroid Build Coastguard Worker    case float_float_to_ivec2
4990*35238bceSAndroid Build Coastguard Worker        values
4991*35238bceSAndroid Build Coastguard Worker        {
4992*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | 3.5 | -8.25 | -0.5 | 0.0 | -20.125 | 36.8125 | 1.0 ];
4993*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 3.5 | -20.125 | -0.5 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 ];
4994*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(2, 3) | ivec2(3, -20) | ivec2(-8, 0) | ivec2(0, 2) | ivec2(0, 1) | ivec2(-20, 0) | ivec2(36, 36) | ivec2(1, -8) ];
4995*35238bceSAndroid Build Coastguard Worker        }
4996*35238bceSAndroid Build Coastguard Worker
4997*35238bceSAndroid Build Coastguard Worker        both ""
4998*35238bceSAndroid Build Coastguard Worker            precision mediump float;
4999*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5000*35238bceSAndroid Build Coastguard Worker
5001*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5002*35238bceSAndroid Build Coastguard Worker
5003*35238bceSAndroid Build Coastguard Worker            void main()
5004*35238bceSAndroid Build Coastguard Worker            {
5005*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5006*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5007*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5008*35238bceSAndroid Build Coastguard Worker            }
5009*35238bceSAndroid Build Coastguard Worker        ""
5010*35238bceSAndroid Build Coastguard Worker    end
5011*35238bceSAndroid Build Coastguard Worker
5012*35238bceSAndroid Build Coastguard Worker    case float_float_to_bvec2
5013*35238bceSAndroid Build Coastguard Worker        values
5014*35238bceSAndroid Build Coastguard Worker        {
5015*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | 3.5 | -8.25 | -0.5 | 0.0 | -20.125 | 36.8125 | 1.0 ];
5016*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 3.5 | -20.125 | -0.5 | 2.0 | 1.0 | 0.0 | 36.8125 | -8.25 ];
5017*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(false, true) | bvec2(true, false) | bvec2(true, true) | bvec2(true, true) ];
5018*35238bceSAndroid Build Coastguard Worker        }
5019*35238bceSAndroid Build Coastguard Worker
5020*35238bceSAndroid Build Coastguard Worker        both ""
5021*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5022*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5023*35238bceSAndroid Build Coastguard Worker
5024*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5025*35238bceSAndroid Build Coastguard Worker
5026*35238bceSAndroid Build Coastguard Worker            void main()
5027*35238bceSAndroid Build Coastguard Worker            {
5028*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5029*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5030*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5031*35238bceSAndroid Build Coastguard Worker            }
5032*35238bceSAndroid Build Coastguard Worker        ""
5033*35238bceSAndroid Build Coastguard Worker    end
5034*35238bceSAndroid Build Coastguard Worker
5035*35238bceSAndroid Build Coastguard Worker    case int_int_to_vec2
5036*35238bceSAndroid Build Coastguard Worker        values
5037*35238bceSAndroid Build Coastguard Worker        {
5038*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | -192 | 2 | 0 | 1 | -12 | 11 | -66 | 5 ];
5039*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -66 | 2 | 255 | 8 | -12 | 5 | -192 | 0 | 1 | 11 ];
5040*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(8.0, -66.0) | vec2(255.0, 2.0) | vec2(-192.0, 255.0) | vec2(2.0, 8.0) | vec2(0.0, -12.0) | vec2(1.0, 5.0) | vec2(-12.0, -192.0) | vec2(11.0, 0.0) | vec2(-66.0, 1.0) | vec2(5.0, 11.0) ];
5041*35238bceSAndroid Build Coastguard Worker        }
5042*35238bceSAndroid Build Coastguard Worker
5043*35238bceSAndroid Build Coastguard Worker        both ""
5044*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5045*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5046*35238bceSAndroid Build Coastguard Worker
5047*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5048*35238bceSAndroid Build Coastguard Worker
5049*35238bceSAndroid Build Coastguard Worker            void main()
5050*35238bceSAndroid Build Coastguard Worker            {
5051*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5052*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
5053*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5054*35238bceSAndroid Build Coastguard Worker            }
5055*35238bceSAndroid Build Coastguard Worker        ""
5056*35238bceSAndroid Build Coastguard Worker    end
5057*35238bceSAndroid Build Coastguard Worker
5058*35238bceSAndroid Build Coastguard Worker    case int_int_to_ivec2
5059*35238bceSAndroid Build Coastguard Worker        values
5060*35238bceSAndroid Build Coastguard Worker        {
5061*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | -192 | 2 | 0 | 1 | -12 | 11 | -66 | 5 ];
5062*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -66 | 2 | 255 | 8 | -12 | 5 | -192 | 0 | 1 | 11 ];
5063*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(8, -66) | ivec2(255, 2) | ivec2(-192, 255) | ivec2(2, 8) | ivec2(0, -12) | ivec2(1, 5) | ivec2(-12, -192) | ivec2(11, 0) | ivec2(-66, 1) | ivec2(5, 11) ];
5064*35238bceSAndroid Build Coastguard Worker        }
5065*35238bceSAndroid Build Coastguard Worker
5066*35238bceSAndroid Build Coastguard Worker        both ""
5067*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5068*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5069*35238bceSAndroid Build Coastguard Worker
5070*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5071*35238bceSAndroid Build Coastguard Worker
5072*35238bceSAndroid Build Coastguard Worker            void main()
5073*35238bceSAndroid Build Coastguard Worker            {
5074*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5075*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5076*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5077*35238bceSAndroid Build Coastguard Worker            }
5078*35238bceSAndroid Build Coastguard Worker        ""
5079*35238bceSAndroid Build Coastguard Worker    end
5080*35238bceSAndroid Build Coastguard Worker
5081*35238bceSAndroid Build Coastguard Worker    case int_int_to_bvec2
5082*35238bceSAndroid Build Coastguard Worker        values
5083*35238bceSAndroid Build Coastguard Worker        {
5084*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | -192 | 2 | 0 | 1 | -12 | 11 | -66 | 5 ];
5085*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -66 | 2 | 255 | 8 | -12 | 5 | -192 | 0 | 1 | 11 ];
5086*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(true, true) | bvec2(true, false) | bvec2(true, true) | bvec2(true, true) ];
5087*35238bceSAndroid Build Coastguard Worker        }
5088*35238bceSAndroid Build Coastguard Worker
5089*35238bceSAndroid Build Coastguard Worker        both ""
5090*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5091*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5092*35238bceSAndroid Build Coastguard Worker
5093*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5094*35238bceSAndroid Build Coastguard Worker
5095*35238bceSAndroid Build Coastguard Worker            void main()
5096*35238bceSAndroid Build Coastguard Worker            {
5097*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5098*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5099*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5100*35238bceSAndroid Build Coastguard Worker            }
5101*35238bceSAndroid Build Coastguard Worker        ""
5102*35238bceSAndroid Build Coastguard Worker    end
5103*35238bceSAndroid Build Coastguard Worker
5104*35238bceSAndroid Build Coastguard Worker    case bool_bool_to_vec2
5105*35238bceSAndroid Build Coastguard Worker        values
5106*35238bceSAndroid Build Coastguard Worker        {
5107*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
5108*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false ];
5109*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, 1.0) | vec2(0.0, 0.0) ];
5110*35238bceSAndroid Build Coastguard Worker        }
5111*35238bceSAndroid Build Coastguard Worker
5112*35238bceSAndroid Build Coastguard Worker        both ""
5113*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5114*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5115*35238bceSAndroid Build Coastguard Worker
5116*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5117*35238bceSAndroid Build Coastguard Worker
5118*35238bceSAndroid Build Coastguard Worker            void main()
5119*35238bceSAndroid Build Coastguard Worker            {
5120*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5121*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
5122*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5123*35238bceSAndroid Build Coastguard Worker            }
5124*35238bceSAndroid Build Coastguard Worker        ""
5125*35238bceSAndroid Build Coastguard Worker    end
5126*35238bceSAndroid Build Coastguard Worker
5127*35238bceSAndroid Build Coastguard Worker    case bool_bool_to_ivec2
5128*35238bceSAndroid Build Coastguard Worker        values
5129*35238bceSAndroid Build Coastguard Worker        {
5130*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
5131*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false ];
5132*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, 1) | ivec2(0, 0) ];
5133*35238bceSAndroid Build Coastguard Worker        }
5134*35238bceSAndroid Build Coastguard Worker
5135*35238bceSAndroid Build Coastguard Worker        both ""
5136*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5137*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5138*35238bceSAndroid Build Coastguard Worker
5139*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5140*35238bceSAndroid Build Coastguard Worker
5141*35238bceSAndroid Build Coastguard Worker            void main()
5142*35238bceSAndroid Build Coastguard Worker            {
5143*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5144*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5145*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5146*35238bceSAndroid Build Coastguard Worker            }
5147*35238bceSAndroid Build Coastguard Worker        ""
5148*35238bceSAndroid Build Coastguard Worker    end
5149*35238bceSAndroid Build Coastguard Worker
5150*35238bceSAndroid Build Coastguard Worker    case bool_bool_to_bvec2
5151*35238bceSAndroid Build Coastguard Worker        values
5152*35238bceSAndroid Build Coastguard Worker        {
5153*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false ];
5154*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false ];
5155*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(false, false) ];
5156*35238bceSAndroid Build Coastguard Worker        }
5157*35238bceSAndroid Build Coastguard Worker
5158*35238bceSAndroid Build Coastguard Worker        both ""
5159*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5160*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5161*35238bceSAndroid Build Coastguard Worker
5162*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5163*35238bceSAndroid Build Coastguard Worker
5164*35238bceSAndroid Build Coastguard Worker            void main()
5165*35238bceSAndroid Build Coastguard Worker            {
5166*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5167*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5168*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5169*35238bceSAndroid Build Coastguard Worker            }
5170*35238bceSAndroid Build Coastguard Worker        ""
5171*35238bceSAndroid Build Coastguard Worker    end
5172*35238bceSAndroid Build Coastguard Worker
5173*35238bceSAndroid Build Coastguard Worker    case float_int_to_vec2
5174*35238bceSAndroid Build Coastguard Worker        values
5175*35238bceSAndroid Build Coastguard Worker        {
5176*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | -0.5 | -20.125 | 0.0 | 3.5 | -8.25 | 36.8125 | 2.0 | 1.0 | 0.0 ];
5177*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -192 | -66 | 255 | 1 | 2 | 0 | -12 | 5 | 11 | 8 ];
5178*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(1.0, -192.0) | vec2(-0.5, -66.0) | vec2(-20.125, 255.0) | vec2(0.0, 1.0) | vec2(3.5, 2.0) | vec2(-8.25, 0.0) | vec2(36.8125, -12.0) | vec2(2.0, 5.0) | vec2(1.0, 11.0) | vec2(0.0, 8.0) ];
5179*35238bceSAndroid Build Coastguard Worker        }
5180*35238bceSAndroid Build Coastguard Worker
5181*35238bceSAndroid Build Coastguard Worker        both ""
5182*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5183*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5184*35238bceSAndroid Build Coastguard Worker
5185*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5186*35238bceSAndroid Build Coastguard Worker
5187*35238bceSAndroid Build Coastguard Worker            void main()
5188*35238bceSAndroid Build Coastguard Worker            {
5189*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5190*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
5191*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5192*35238bceSAndroid Build Coastguard Worker            }
5193*35238bceSAndroid Build Coastguard Worker        ""
5194*35238bceSAndroid Build Coastguard Worker    end
5195*35238bceSAndroid Build Coastguard Worker
5196*35238bceSAndroid Build Coastguard Worker    case float_int_to_ivec2
5197*35238bceSAndroid Build Coastguard Worker        values
5198*35238bceSAndroid Build Coastguard Worker        {
5199*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | -0.5 | -20.125 | 0.0 | 3.5 | -8.25 | 36.8125 | 2.0 | 1.0 | 0.0 ];
5200*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -192 | -66 | 255 | 1 | 2 | 0 | -12 | 5 | 11 | 8 ];
5201*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(1, -192) | ivec2(0, -66) | ivec2(-20, 255) | ivec2(0, 1) | ivec2(3, 2) | ivec2(-8, 0) | ivec2(36, -12) | ivec2(2, 5) | ivec2(1, 11) | ivec2(0, 8) ];
5202*35238bceSAndroid Build Coastguard Worker        }
5203*35238bceSAndroid Build Coastguard Worker
5204*35238bceSAndroid Build Coastguard Worker        both ""
5205*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5206*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5207*35238bceSAndroid Build Coastguard Worker
5208*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5209*35238bceSAndroid Build Coastguard Worker
5210*35238bceSAndroid Build Coastguard Worker            void main()
5211*35238bceSAndroid Build Coastguard Worker            {
5212*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5213*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5214*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5215*35238bceSAndroid Build Coastguard Worker            }
5216*35238bceSAndroid Build Coastguard Worker        ""
5217*35238bceSAndroid Build Coastguard Worker    end
5218*35238bceSAndroid Build Coastguard Worker
5219*35238bceSAndroid Build Coastguard Worker    case float_int_to_bvec2
5220*35238bceSAndroid Build Coastguard Worker        values
5221*35238bceSAndroid Build Coastguard Worker        {
5222*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 1.0 | -0.5 | -20.125 | 0.0 | 3.5 | -8.25 | 36.8125 | 2.0 | 1.0 | 0.0 ];
5223*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -192 | -66 | 255 | 1 | 2 | 0 | -12 | 5 | 11 | 8 ];
5224*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(true, false) | bvec2(true, true) | bvec2(true, true) | bvec2(true, true) | bvec2(false, true) ];
5225*35238bceSAndroid Build Coastguard Worker        }
5226*35238bceSAndroid Build Coastguard Worker
5227*35238bceSAndroid Build Coastguard Worker        both ""
5228*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5229*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5230*35238bceSAndroid Build Coastguard Worker
5231*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5232*35238bceSAndroid Build Coastguard Worker
5233*35238bceSAndroid Build Coastguard Worker            void main()
5234*35238bceSAndroid Build Coastguard Worker            {
5235*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5236*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5237*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5238*35238bceSAndroid Build Coastguard Worker            }
5239*35238bceSAndroid Build Coastguard Worker        ""
5240*35238bceSAndroid Build Coastguard Worker    end
5241*35238bceSAndroid Build Coastguard Worker
5242*35238bceSAndroid Build Coastguard Worker    case float_bool_to_vec2
5243*35238bceSAndroid Build Coastguard Worker        values
5244*35238bceSAndroid Build Coastguard Worker        {
5245*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | -20.125 | 0.0 | 1.0 | -8.25 | -0.5 | 36.8125 | 3.5 ];
5246*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | false | false | true | true | false | true ];
5247*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(2.0, 1.0) | vec2(-20.125, 0.0) | vec2(0.0, 0.0) | vec2(1.0, 0.0) | vec2(-8.25, 1.0) | vec2(-0.5, 1.0) | vec2(36.8125, 0.0) | vec2(3.5, 1.0) ];
5248*35238bceSAndroid Build Coastguard Worker        }
5249*35238bceSAndroid Build Coastguard Worker
5250*35238bceSAndroid Build Coastguard Worker        both ""
5251*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5252*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5253*35238bceSAndroid Build Coastguard Worker
5254*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5255*35238bceSAndroid Build Coastguard Worker
5256*35238bceSAndroid Build Coastguard Worker            void main()
5257*35238bceSAndroid Build Coastguard Worker            {
5258*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5259*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
5260*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5261*35238bceSAndroid Build Coastguard Worker            }
5262*35238bceSAndroid Build Coastguard Worker        ""
5263*35238bceSAndroid Build Coastguard Worker    end
5264*35238bceSAndroid Build Coastguard Worker
5265*35238bceSAndroid Build Coastguard Worker    case float_bool_to_ivec2
5266*35238bceSAndroid Build Coastguard Worker        values
5267*35238bceSAndroid Build Coastguard Worker        {
5268*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | -20.125 | 0.0 | 1.0 | -8.25 | -0.5 | 36.8125 | 3.5 ];
5269*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | false | false | true | true | false | true ];
5270*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(2, 1) | ivec2(-20, 0) | ivec2(0, 0) | ivec2(1, 0) | ivec2(-8, 1) | ivec2(0, 1) | ivec2(36, 0) | ivec2(3, 1) ];
5271*35238bceSAndroid Build Coastguard Worker        }
5272*35238bceSAndroid Build Coastguard Worker
5273*35238bceSAndroid Build Coastguard Worker        both ""
5274*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5275*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5276*35238bceSAndroid Build Coastguard Worker
5277*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5278*35238bceSAndroid Build Coastguard Worker
5279*35238bceSAndroid Build Coastguard Worker            void main()
5280*35238bceSAndroid Build Coastguard Worker            {
5281*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5282*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5283*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5284*35238bceSAndroid Build Coastguard Worker            }
5285*35238bceSAndroid Build Coastguard Worker        ""
5286*35238bceSAndroid Build Coastguard Worker    end
5287*35238bceSAndroid Build Coastguard Worker
5288*35238bceSAndroid Build Coastguard Worker    case float_bool_to_bvec2
5289*35238bceSAndroid Build Coastguard Worker        values
5290*35238bceSAndroid Build Coastguard Worker        {
5291*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 2.0 | -20.125 | 0.0 | 1.0 | -8.25 | -0.5 | 36.8125 | 3.5 ];
5292*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | false | false | true | true | false | true ];
5293*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(true, false) | bvec2(false, false) | bvec2(true, false) | bvec2(true, true) | bvec2(true, true) | bvec2(true, false) | bvec2(true, true) ];
5294*35238bceSAndroid Build Coastguard Worker        }
5295*35238bceSAndroid Build Coastguard Worker
5296*35238bceSAndroid Build Coastguard Worker        both ""
5297*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5298*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5299*35238bceSAndroid Build Coastguard Worker
5300*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5301*35238bceSAndroid Build Coastguard Worker
5302*35238bceSAndroid Build Coastguard Worker            void main()
5303*35238bceSAndroid Build Coastguard Worker            {
5304*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5305*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5306*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5307*35238bceSAndroid Build Coastguard Worker            }
5308*35238bceSAndroid Build Coastguard Worker        ""
5309*35238bceSAndroid Build Coastguard Worker    end
5310*35238bceSAndroid Build Coastguard Worker
5311*35238bceSAndroid Build Coastguard Worker    case int_bool_to_vec2
5312*35238bceSAndroid Build Coastguard Worker        values
5313*35238bceSAndroid Build Coastguard Worker        {
5314*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | 11 | -66 | 0 | -192 | -12 | 1 | 5 | 2 ];
5315*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | true | false | true | false | false | true | false | true ];
5316*35238bceSAndroid Build Coastguard Worker            output vec2 out0 = [ vec2(8.0, 1.0) | vec2(255.0, 0.0) | vec2(11.0, 1.0) | vec2(-66.0, 0.0) | vec2(0.0, 1.0) | vec2(-192.0, 0.0) | vec2(-12.0, 0.0) | vec2(1.0, 1.0) | vec2(5.0, 0.0) | vec2(2.0, 1.0) ];
5317*35238bceSAndroid Build Coastguard Worker        }
5318*35238bceSAndroid Build Coastguard Worker
5319*35238bceSAndroid Build Coastguard Worker        both ""
5320*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5321*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5322*35238bceSAndroid Build Coastguard Worker
5323*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5324*35238bceSAndroid Build Coastguard Worker
5325*35238bceSAndroid Build Coastguard Worker            void main()
5326*35238bceSAndroid Build Coastguard Worker            {
5327*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5328*35238bceSAndroid Build Coastguard Worker                out0 = vec2(in0, in1);
5329*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5330*35238bceSAndroid Build Coastguard Worker            }
5331*35238bceSAndroid Build Coastguard Worker        ""
5332*35238bceSAndroid Build Coastguard Worker    end
5333*35238bceSAndroid Build Coastguard Worker
5334*35238bceSAndroid Build Coastguard Worker    case int_bool_to_ivec2
5335*35238bceSAndroid Build Coastguard Worker        values
5336*35238bceSAndroid Build Coastguard Worker        {
5337*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | 11 | -66 | 0 | -192 | -12 | 1 | 5 | 2 ];
5338*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | true | false | true | false | false | true | false | true ];
5339*35238bceSAndroid Build Coastguard Worker            output ivec2 out0 = [ ivec2(8, 1) | ivec2(255, 0) | ivec2(11, 1) | ivec2(-66, 0) | ivec2(0, 1) | ivec2(-192, 0) | ivec2(-12, 0) | ivec2(1, 1) | ivec2(5, 0) | ivec2(2, 1) ];
5340*35238bceSAndroid Build Coastguard Worker        }
5341*35238bceSAndroid Build Coastguard Worker
5342*35238bceSAndroid Build Coastguard Worker        both ""
5343*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5344*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5345*35238bceSAndroid Build Coastguard Worker
5346*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5347*35238bceSAndroid Build Coastguard Worker
5348*35238bceSAndroid Build Coastguard Worker            void main()
5349*35238bceSAndroid Build Coastguard Worker            {
5350*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5351*35238bceSAndroid Build Coastguard Worker                out0 = ivec2(in0, in1);
5352*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5353*35238bceSAndroid Build Coastguard Worker            }
5354*35238bceSAndroid Build Coastguard Worker        ""
5355*35238bceSAndroid Build Coastguard Worker    end
5356*35238bceSAndroid Build Coastguard Worker
5357*35238bceSAndroid Build Coastguard Worker    case int_bool_to_bvec2
5358*35238bceSAndroid Build Coastguard Worker        values
5359*35238bceSAndroid Build Coastguard Worker        {
5360*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 8 | 255 | 11 | -66 | 0 | -192 | -12 | 1 | 5 | 2 ];
5361*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ true | false | true | false | true | false | false | true | false | true ];
5362*35238bceSAndroid Build Coastguard Worker            output bvec2 out0 = [ bvec2(true, true) | bvec2(true, false) | bvec2(true, true) | bvec2(true, false) | bvec2(false, true) | bvec2(true, false) | bvec2(true, false) | bvec2(true, true) | bvec2(true, false) | bvec2(true, true) ];
5363*35238bceSAndroid Build Coastguard Worker        }
5364*35238bceSAndroid Build Coastguard Worker
5365*35238bceSAndroid Build Coastguard Worker        both ""
5366*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5367*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5368*35238bceSAndroid Build Coastguard Worker
5369*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5370*35238bceSAndroid Build Coastguard Worker
5371*35238bceSAndroid Build Coastguard Worker            void main()
5372*35238bceSAndroid Build Coastguard Worker            {
5373*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5374*35238bceSAndroid Build Coastguard Worker                out0 = bvec2(in0, in1);
5375*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5376*35238bceSAndroid Build Coastguard Worker            }
5377*35238bceSAndroid Build Coastguard Worker        ""
5378*35238bceSAndroid Build Coastguard Worker    end
5379*35238bceSAndroid Build Coastguard Worker
5380*35238bceSAndroid Build Coastguard Worker
5381*35238bceSAndroid Build Coastguard Workerend # vector_combine
5382*35238bceSAndroid Build Coastguard Workergroup matrix_combine "Matrix Combine Constructors"
5383*35238bceSAndroid Build Coastguard Worker
5384*35238bceSAndroid Build Coastguard Worker    case vec2_vec2_to_mat2
5385*35238bceSAndroid Build Coastguard Worker        values
5386*35238bceSAndroid Build Coastguard Worker        {
5387*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(1.0, 1.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) | vec2(-0.5, -2.25) ];
5388*35238bceSAndroid Build Coastguard Worker            input vec2 in1 = [ vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) | vec2(-32.0, 64.0) | vec2(0.0, 0.5) | vec2(1.0, 1.25) ];
5389*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.5, -0.5, -2.25) | mat2(1.0, 1.25, -0.75, -0.0322580645161) | mat2(-32.0, 64.0, -32.0, 64.0) | mat2(-0.75, -0.0322580645161, 0.0, 0.5) | mat2(-0.5, -2.25, 1.0, 1.25) ];
5390*35238bceSAndroid Build Coastguard Worker        }
5391*35238bceSAndroid Build Coastguard Worker
5392*35238bceSAndroid Build Coastguard Worker        both ""
5393*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5394*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5395*35238bceSAndroid Build Coastguard Worker
5396*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5397*35238bceSAndroid Build Coastguard Worker
5398*35238bceSAndroid Build Coastguard Worker            void main()
5399*35238bceSAndroid Build Coastguard Worker            {
5400*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5401*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5402*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5403*35238bceSAndroid Build Coastguard Worker            }
5404*35238bceSAndroid Build Coastguard Worker        ""
5405*35238bceSAndroid Build Coastguard Worker    end
5406*35238bceSAndroid Build Coastguard Worker
5407*35238bceSAndroid Build Coastguard Worker    case bvec2_bvec2_to_mat2
5408*35238bceSAndroid Build Coastguard Worker        values
5409*35238bceSAndroid Build Coastguard Worker        {
5410*35238bceSAndroid Build Coastguard Worker            input bvec2 in0 = [ bvec2(true, false) | bvec2(false, false) | bvec2(false, true) | bvec2(false, false) | bvec2(true, true) ];
5411*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(true, true) | bvec2(false, false) | bvec2(true, false) | bvec2(false, false) | bvec2(false, true) ];
5412*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 1.0, 1.0) | mat2(0.0, 0.0, 0.0, 0.0) | mat2(0.0, 1.0, 1.0, 0.0) | mat2(0.0, 0.0, 0.0, 0.0) | mat2(1.0, 1.0, 0.0, 1.0) ];
5413*35238bceSAndroid Build Coastguard Worker        }
5414*35238bceSAndroid Build Coastguard Worker
5415*35238bceSAndroid Build Coastguard Worker        both ""
5416*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5417*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5418*35238bceSAndroid Build Coastguard Worker
5419*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5420*35238bceSAndroid Build Coastguard Worker
5421*35238bceSAndroid Build Coastguard Worker            void main()
5422*35238bceSAndroid Build Coastguard Worker            {
5423*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5424*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5425*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5426*35238bceSAndroid Build Coastguard Worker            }
5427*35238bceSAndroid Build Coastguard Worker        ""
5428*35238bceSAndroid Build Coastguard Worker    end
5429*35238bceSAndroid Build Coastguard Worker
5430*35238bceSAndroid Build Coastguard Worker    case float_float_float_float_to_mat2
5431*35238bceSAndroid Build Coastguard Worker        values
5432*35238bceSAndroid Build Coastguard Worker        {
5433*35238bceSAndroid Build Coastguard Worker            input float in0 = [ 0.0 | -0.5 | -20.125 | 2.0 | 36.8125 | 1.0 | 3.5 | -8.25 ];
5434*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -8.25 | 2.0 | -0.5 | -20.125 | 3.5 | 1.0 | 36.8125 | 0.0 ];
5435*35238bceSAndroid Build Coastguard Worker            input float in2 = [ 36.8125 | -8.25 | 3.5 | 2.0 | -0.5 | -20.125 | 1.0 | 0.0 ];
5436*35238bceSAndroid Build Coastguard Worker            input float in3 = [ 36.8125 | 0.0 | 2.0 | 3.5 | -8.25 | -0.5 | -20.125 | 1.0 ];
5437*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, -8.25, 36.8125, 36.8125) | mat2(-0.5, 2.0, -8.25, 0.0) | mat2(-20.125, -0.5, 3.5, 2.0) | mat2(2.0, -20.125, 2.0, 3.5) | mat2(36.8125, 3.5, -0.5, -8.25) | mat2(1.0, 1.0, -20.125, -0.5) | mat2(3.5, 36.8125, 1.0, -20.125) | mat2(-8.25, 0.0, 0.0, 1.0) ];
5438*35238bceSAndroid Build Coastguard Worker        }
5439*35238bceSAndroid Build Coastguard Worker
5440*35238bceSAndroid Build Coastguard Worker        both ""
5441*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5442*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5443*35238bceSAndroid Build Coastguard Worker
5444*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5445*35238bceSAndroid Build Coastguard Worker
5446*35238bceSAndroid Build Coastguard Worker            void main()
5447*35238bceSAndroid Build Coastguard Worker            {
5448*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5449*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2, in3);
5450*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5451*35238bceSAndroid Build Coastguard Worker            }
5452*35238bceSAndroid Build Coastguard Worker        ""
5453*35238bceSAndroid Build Coastguard Worker    end
5454*35238bceSAndroid Build Coastguard Worker
5455*35238bceSAndroid Build Coastguard Worker    case int_int_int_int_to_mat2
5456*35238bceSAndroid Build Coastguard Worker        values
5457*35238bceSAndroid Build Coastguard Worker        {
5458*35238bceSAndroid Build Coastguard Worker            input int in0 = [ 2 | 0 | -66 | 8 | 1 | 255 | 5 | -12 | 11 | -192 ];
5459*35238bceSAndroid Build Coastguard Worker            input int in1 = [ -192 | 2 | 5 | -12 | -66 | 255 | 8 | 1 | 11 | 0 ];
5460*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 2 | 11 | -192 | 255 | 1 | 5 | 0 | -12 | 8 | -66 ];
5461*35238bceSAndroid Build Coastguard Worker            input int in3 = [ 255 | 0 | 11 | -66 | 2 | 8 | -192 | 1 | -12 | 5 ];
5462*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(2.0, -192.0, 2.0, 255.0) | mat2(0.0, 2.0, 11.0, 0.0) | mat2(-66.0, 5.0, -192.0, 11.0) | mat2(8.0, -12.0, 255.0, -66.0) | mat2(1.0, -66.0, 1.0, 2.0) | mat2(255.0, 255.0, 5.0, 8.0) | mat2(5.0, 8.0, 0.0, -192.0) | mat2(-12.0, 1.0, -12.0, 1.0) | mat2(11.0, 11.0, 8.0, -12.0) | mat2(-192.0, 0.0, -66.0, 5.0) ];
5463*35238bceSAndroid Build Coastguard Worker        }
5464*35238bceSAndroid Build Coastguard Worker
5465*35238bceSAndroid Build Coastguard Worker        both ""
5466*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5467*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5468*35238bceSAndroid Build Coastguard Worker
5469*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5470*35238bceSAndroid Build Coastguard Worker
5471*35238bceSAndroid Build Coastguard Worker            void main()
5472*35238bceSAndroid Build Coastguard Worker            {
5473*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5474*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2, in3);
5475*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5476*35238bceSAndroid Build Coastguard Worker            }
5477*35238bceSAndroid Build Coastguard Worker        ""
5478*35238bceSAndroid Build Coastguard Worker    end
5479*35238bceSAndroid Build Coastguard Worker
5480*35238bceSAndroid Build Coastguard Worker    case bool_bool_bool_bool_to_mat2
5481*35238bceSAndroid Build Coastguard Worker        values
5482*35238bceSAndroid Build Coastguard Worker        {
5483*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true ];
5484*35238bceSAndroid Build Coastguard Worker            input bool in1 = [ false | true ];
5485*35238bceSAndroid Build Coastguard Worker            input bool in2 = [ true | false ];
5486*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ false | true ];
5487*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.0, 1.0, 0.0) | mat2(1.0, 1.0, 0.0, 1.0) ];
5488*35238bceSAndroid Build Coastguard Worker        }
5489*35238bceSAndroid Build Coastguard Worker
5490*35238bceSAndroid Build Coastguard Worker        both ""
5491*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5492*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5493*35238bceSAndroid Build Coastguard Worker
5494*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5495*35238bceSAndroid Build Coastguard Worker
5496*35238bceSAndroid Build Coastguard Worker            void main()
5497*35238bceSAndroid Build Coastguard Worker            {
5498*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5499*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2, in3);
5500*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5501*35238bceSAndroid Build Coastguard Worker            }
5502*35238bceSAndroid Build Coastguard Worker        ""
5503*35238bceSAndroid Build Coastguard Worker    end
5504*35238bceSAndroid Build Coastguard Worker
5505*35238bceSAndroid Build Coastguard Worker    case bool_float_int_bool_to_mat2
5506*35238bceSAndroid Build Coastguard Worker        values
5507*35238bceSAndroid Build Coastguard Worker        {
5508*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | true | true | false | false | true | true | true | false | false ];
5509*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -0.5 | -20.125 | 3.5 | 2.0 | 1.0 | 0.0 | 0.0 | 1.0 | 36.8125 | -8.25 ];
5510*35238bceSAndroid Build Coastguard Worker            input int in2 = [ -66 | -192 | 5 | 255 | 0 | -12 | 11 | 1 | 2 | 8 ];
5511*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ true | false | true | false | false | false | true | false | true | true ];
5512*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, -0.5, -66.0, 1.0) | mat2(1.0, -20.125, -192.0, 0.0) | mat2(1.0, 3.5, 5.0, 1.0) | mat2(0.0, 2.0, 255.0, 0.0) | mat2(0.0, 1.0, 0.0, 0.0) | mat2(1.0, 0.0, -12.0, 0.0) | mat2(1.0, 0.0, 11.0, 1.0) | mat2(1.0, 1.0, 1.0, 0.0) | mat2(0.0, 36.8125, 2.0, 1.0) | mat2(0.0, -8.25, 8.0, 1.0) ];
5513*35238bceSAndroid Build Coastguard Worker        }
5514*35238bceSAndroid Build Coastguard Worker
5515*35238bceSAndroid Build Coastguard Worker        both ""
5516*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5517*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5518*35238bceSAndroid Build Coastguard Worker
5519*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5520*35238bceSAndroid Build Coastguard Worker
5521*35238bceSAndroid Build Coastguard Worker            void main()
5522*35238bceSAndroid Build Coastguard Worker            {
5523*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5524*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2, in3);
5525*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5526*35238bceSAndroid Build Coastguard Worker            }
5527*35238bceSAndroid Build Coastguard Worker        ""
5528*35238bceSAndroid Build Coastguard Worker    end
5529*35238bceSAndroid Build Coastguard Worker
5530*35238bceSAndroid Build Coastguard Worker    case vec2_ivec2_to_mat2
5531*35238bceSAndroid Build Coastguard Worker        values
5532*35238bceSAndroid Build Coastguard Worker        {
5533*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(0.0, 0.5) | vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) ];
5534*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(-32, 64) | ivec2(0, 0) | ivec2(0, -2) | ivec2(0, 0) | ivec2(1, 1) ];
5535*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.5, -32.0, 64.0) | mat2(-32.0, 64.0, 0.0, 0.0) | mat2(-0.5, -2.25, 0.0, -2.0) | mat2(-0.75, -0.0322580645161, 0.0, 0.0) | mat2(1.0, 1.25, 1.0, 1.0) ];
5536*35238bceSAndroid Build Coastguard Worker        }
5537*35238bceSAndroid Build Coastguard Worker
5538*35238bceSAndroid Build Coastguard Worker        both ""
5539*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5540*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5541*35238bceSAndroid Build Coastguard Worker
5542*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5543*35238bceSAndroid Build Coastguard Worker
5544*35238bceSAndroid Build Coastguard Worker            void main()
5545*35238bceSAndroid Build Coastguard Worker            {
5546*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5547*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5548*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5549*35238bceSAndroid Build Coastguard Worker            }
5550*35238bceSAndroid Build Coastguard Worker        ""
5551*35238bceSAndroid Build Coastguard Worker    end
5552*35238bceSAndroid Build Coastguard Worker
5553*35238bceSAndroid Build Coastguard Worker    case vec2_bvec2_to_mat2
5554*35238bceSAndroid Build Coastguard Worker        values
5555*35238bceSAndroid Build Coastguard Worker        {
5556*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(0.0, 0.5) ];
5557*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(false, true) | bvec2(false, false) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) ];
5558*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(-32.0, 64.0, 0.0, 1.0) | mat2(-0.5, -2.25, 0.0, 0.0) | mat2(-0.75, -0.0322580645161, 1.0, 0.0) | mat2(1.0, 1.25, 0.0, 0.0) | mat2(0.0, 0.5, 1.0, 1.0) ];
5559*35238bceSAndroid Build Coastguard Worker        }
5560*35238bceSAndroid Build Coastguard Worker
5561*35238bceSAndroid Build Coastguard Worker        both ""
5562*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5563*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5564*35238bceSAndroid Build Coastguard Worker
5565*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5566*35238bceSAndroid Build Coastguard Worker
5567*35238bceSAndroid Build Coastguard Worker            void main()
5568*35238bceSAndroid Build Coastguard Worker            {
5569*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5570*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5571*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5572*35238bceSAndroid Build Coastguard Worker            }
5573*35238bceSAndroid Build Coastguard Worker        ""
5574*35238bceSAndroid Build Coastguard Worker    end
5575*35238bceSAndroid Build Coastguard Worker
5576*35238bceSAndroid Build Coastguard Worker    case bvec3_float_to_mat2
5577*35238bceSAndroid Build Coastguard Worker        values
5578*35238bceSAndroid Build Coastguard Worker        {
5579*35238bceSAndroid Build Coastguard Worker            input bvec3 in0 = [ bvec3(false, true, false) | bvec3(true, true, true) | bvec3(false, false, false) | bvec3(true, false, false) | bvec3(false, true, false) | bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, false, false) ];
5580*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -20.125 | -0.5 | 3.5 | -8.25 | 0.0 | 1.0 | 2.0 | 36.8125 ];
5581*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 1.0, 0.0, -20.125) | mat2(1.0, 1.0, 1.0, -0.5) | mat2(0.0, 0.0, 0.0, 3.5) | mat2(1.0, 0.0, 0.0, -8.25) | mat2(0.0, 1.0, 0.0, 0.0) | mat2(1.0, 0.0, 0.0, 1.0) | mat2(0.0, 0.0, 0.0, 2.0) | mat2(0.0, 0.0, 0.0, 36.8125) ];
5582*35238bceSAndroid Build Coastguard Worker        }
5583*35238bceSAndroid Build Coastguard Worker
5584*35238bceSAndroid Build Coastguard Worker        both ""
5585*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5586*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5587*35238bceSAndroid Build Coastguard Worker
5588*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5589*35238bceSAndroid Build Coastguard Worker
5590*35238bceSAndroid Build Coastguard Worker            void main()
5591*35238bceSAndroid Build Coastguard Worker            {
5592*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5593*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5594*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5595*35238bceSAndroid Build Coastguard Worker            }
5596*35238bceSAndroid Build Coastguard Worker        ""
5597*35238bceSAndroid Build Coastguard Worker    end
5598*35238bceSAndroid Build Coastguard Worker
5599*35238bceSAndroid Build Coastguard Worker    case vec3_float_to_mat2
5600*35238bceSAndroid Build Coastguard Worker        values
5601*35238bceSAndroid Build Coastguard Worker        {
5602*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(0.0, 0.5, 0.75) | vec3(1.0, 1.25, 1.125) | vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) | vec3(-32.0, 64.0, -51.0) | vec3(-0.5, -2.25, -4.875) | vec3(1.0, 1.25, 1.125) ];
5603*35238bceSAndroid Build Coastguard Worker            input float in1 = [ -8.25 | 36.8125 | -0.5 | -20.125 | 1.0 | 2.0 | 0.0 | 3.5 ];
5604*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(0.0, 0.5, 0.75, -8.25) | mat2(1.0, 1.25, 1.125, 36.8125) | mat2(-0.75, -0.0322580645161, 0.0526315789474, -0.5) | mat2(-0.5, -2.25, -4.875, -20.125) | mat2(0.0, 0.5, 0.75, 1.0) | mat2(-32.0, 64.0, -51.0, 2.0) | mat2(-0.5, -2.25, -4.875, 0.0) | mat2(1.0, 1.25, 1.125, 3.5) ];
5605*35238bceSAndroid Build Coastguard Worker        }
5606*35238bceSAndroid Build Coastguard Worker
5607*35238bceSAndroid Build Coastguard Worker        both ""
5608*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5609*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5610*35238bceSAndroid Build Coastguard Worker
5611*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5612*35238bceSAndroid Build Coastguard Worker
5613*35238bceSAndroid Build Coastguard Worker            void main()
5614*35238bceSAndroid Build Coastguard Worker            {
5615*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5616*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1);
5617*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5618*35238bceSAndroid Build Coastguard Worker            }
5619*35238bceSAndroid Build Coastguard Worker        ""
5620*35238bceSAndroid Build Coastguard Worker    end
5621*35238bceSAndroid Build Coastguard Worker
5622*35238bceSAndroid Build Coastguard Worker    case int_ivec2_int_to_mat2
5623*35238bceSAndroid Build Coastguard Worker        values
5624*35238bceSAndroid Build Coastguard Worker        {
5625*35238bceSAndroid Build Coastguard Worker            input int in0 = [ -66 | 255 | 8 | 0 | 5 | -12 | 1 | -192 | 2 | 11 ];
5626*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, 0) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(0, -2) | ivec2(0, 0) | ivec2(1, 1) ];
5627*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 0 | -12 | 8 | -66 | 11 | 5 | 255 | 2 | 1 | -192 ];
5628*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(-66.0, 0.0, -2.0, 0.0) | mat2(255.0, 0.0, 0.0, -12.0) | mat2(8.0, -32.0, 64.0, 8.0) | mat2(0.0, 1.0, 1.0, -66.0) | mat2(5.0, 0.0, 0.0, 11.0) | mat2(-12.0, 0.0, 0.0, 5.0) | mat2(1.0, -32.0, 64.0, 255.0) | mat2(-192.0, 0.0, -2.0, 2.0) | mat2(2.0, 0.0, 0.0, 1.0) | mat2(11.0, 1.0, 1.0, -192.0) ];
5629*35238bceSAndroid Build Coastguard Worker        }
5630*35238bceSAndroid Build Coastguard Worker
5631*35238bceSAndroid Build Coastguard Worker        both ""
5632*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5633*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5634*35238bceSAndroid Build Coastguard Worker
5635*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5636*35238bceSAndroid Build Coastguard Worker
5637*35238bceSAndroid Build Coastguard Worker            void main()
5638*35238bceSAndroid Build Coastguard Worker            {
5639*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5640*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2);
5641*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5642*35238bceSAndroid Build Coastguard Worker            }
5643*35238bceSAndroid Build Coastguard Worker        ""
5644*35238bceSAndroid Build Coastguard Worker    end
5645*35238bceSAndroid Build Coastguard Worker
5646*35238bceSAndroid Build Coastguard Worker    case bool_float_ivec2_to_mat2
5647*35238bceSAndroid Build Coastguard Worker        values
5648*35238bceSAndroid Build Coastguard Worker        {
5649*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | true | true | false | true | false | false | false ];
5650*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 0.0 | 1.0 | 2.0 | -0.5 | 3.5 | -20.125 | 36.8125 | -8.25 ];
5651*35238bceSAndroid Build Coastguard Worker            input ivec2 in2 = [ ivec2(1, 1) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(0, -2) | ivec2(0, 0) | ivec2(0, 0) ];
5652*35238bceSAndroid Build Coastguard Worker            output mat2 out0 = [ mat2(1.0, 0.0, 1.0, 1.0) | mat2(1.0, 1.0, 1.0, 1.0) | mat2(1.0, 2.0, 0.0, -2.0) | mat2(0.0, -0.5, 0.0, 0.0) | mat2(1.0, 3.5, -32.0, 64.0) | mat2(0.0, -20.125, 0.0, -2.0) | mat2(0.0, 36.8125, 0.0, 0.0) | mat2(0.0, -8.25, 0.0, 0.0) ];
5653*35238bceSAndroid Build Coastguard Worker        }
5654*35238bceSAndroid Build Coastguard Worker
5655*35238bceSAndroid Build Coastguard Worker        both ""
5656*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5657*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5658*35238bceSAndroid Build Coastguard Worker
5659*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5660*35238bceSAndroid Build Coastguard Worker
5661*35238bceSAndroid Build Coastguard Worker            void main()
5662*35238bceSAndroid Build Coastguard Worker            {
5663*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5664*35238bceSAndroid Build Coastguard Worker                out0 = mat2(in0, in1, in2);
5665*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5666*35238bceSAndroid Build Coastguard Worker            }
5667*35238bceSAndroid Build Coastguard Worker        ""
5668*35238bceSAndroid Build Coastguard Worker    end
5669*35238bceSAndroid Build Coastguard Worker
5670*35238bceSAndroid Build Coastguard Worker    case vec3_vec3_vec3_to_mat3
5671*35238bceSAndroid Build Coastguard Worker        values
5672*35238bceSAndroid Build Coastguard Worker        {
5673*35238bceSAndroid Build Coastguard Worker            input vec3 in0 = [ vec3(1.0, 1.25, 1.125) | vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(-32.0, 64.0, -51.0) | vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) ];
5674*35238bceSAndroid Build Coastguard Worker            input vec3 in1 = [ vec3(-0.5, -2.25, -4.875) | vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(0.0, 0.5, 0.75) | vec3(-32.0, 64.0, -51.0) | vec3(1.0, 1.25, 1.125) ];
5675*35238bceSAndroid Build Coastguard Worker            input vec3 in2 = [ vec3(-0.5, -2.25, -4.875) | vec3(0.0, 0.5, 0.75) | vec3(-0.75, -0.0322580645161, 0.0526315789474) | vec3(-32.0, 64.0, -51.0) | vec3(1.0, 1.25, 1.125) ];
5676*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 1.25, 1.125, -0.5, -2.25, -4.875, -0.5, -2.25, -4.875) | mat3(-0.75, -0.0322580645161, 0.0526315789474, -0.75, -0.0322580645161, 0.0526315789474, 0.0, 0.5, 0.75) | mat3(-32.0, 64.0, -51.0, 0.0, 0.5, 0.75, -0.75, -0.0322580645161, 0.0526315789474) | mat3(-0.5, -2.25, -4.875, -32.0, 64.0, -51.0, -32.0, 64.0, -51.0) | mat3(0.0, 0.5, 0.75, 1.0, 1.25, 1.125, 1.0, 1.25, 1.125) ];
5677*35238bceSAndroid Build Coastguard Worker        }
5678*35238bceSAndroid Build Coastguard Worker
5679*35238bceSAndroid Build Coastguard Worker        both ""
5680*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5681*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5682*35238bceSAndroid Build Coastguard Worker
5683*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5684*35238bceSAndroid Build Coastguard Worker
5685*35238bceSAndroid Build Coastguard Worker            void main()
5686*35238bceSAndroid Build Coastguard Worker            {
5687*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5688*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2);
5689*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5690*35238bceSAndroid Build Coastguard Worker            }
5691*35238bceSAndroid Build Coastguard Worker        ""
5692*35238bceSAndroid Build Coastguard Worker    end
5693*35238bceSAndroid Build Coastguard Worker
5694*35238bceSAndroid Build Coastguard Worker    case ivec3_ivec3_ivec3_to_mat3
5695*35238bceSAndroid Build Coastguard Worker        values
5696*35238bceSAndroid Build Coastguard Worker        {
5697*35238bceSAndroid Build Coastguard Worker            input ivec3 in0 = [ ivec3(0, -2, -4) | ivec3(1, 1, 1) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) | ivec3(0, 0, 0) ];
5698*35238bceSAndroid Build Coastguard Worker            input ivec3 in1 = [ ivec3(0, 0, 0) | ivec3(1, 1, 1) | ivec3(0, -2, -4) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) ];
5699*35238bceSAndroid Build Coastguard Worker            input ivec3 in2 = [ ivec3(1, 1, 1) | ivec3(0, 0, 0) | ivec3(0, 0, 0) | ivec3(-32, 64, -51) | ivec3(0, -2, -4) ];
5700*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(0.0, -2.0, -4.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0) | mat3(1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0) | mat3(-32.0, 64.0, -51.0, 0.0, -2.0, -4.0, 0.0, 0.0, 0.0) | mat3(0.0, 0.0, 0.0, -32.0, 64.0, -51.0, -32.0, 64.0, -51.0) | mat3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -2.0, -4.0) ];
5701*35238bceSAndroid Build Coastguard Worker        }
5702*35238bceSAndroid Build Coastguard Worker
5703*35238bceSAndroid Build Coastguard Worker        both ""
5704*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5705*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5706*35238bceSAndroid Build Coastguard Worker
5707*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5708*35238bceSAndroid Build Coastguard Worker
5709*35238bceSAndroid Build Coastguard Worker            void main()
5710*35238bceSAndroid Build Coastguard Worker            {
5711*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5712*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2);
5713*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5714*35238bceSAndroid Build Coastguard Worker            }
5715*35238bceSAndroid Build Coastguard Worker        ""
5716*35238bceSAndroid Build Coastguard Worker    end
5717*35238bceSAndroid Build Coastguard Worker
5718*35238bceSAndroid Build Coastguard Worker    case vec2_ivec2_float_float_int_bool_bool_to_mat3
5719*35238bceSAndroid Build Coastguard Worker        values
5720*35238bceSAndroid Build Coastguard Worker        {
5721*35238bceSAndroid Build Coastguard Worker            input vec2 in0 = [ vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-32.0, 64.0) | vec2(-0.5, -2.25) | vec2(-32.0, 64.0) | vec2(-0.75, -0.0322580645161) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) ];
5722*35238bceSAndroid Build Coastguard Worker            input ivec2 in1 = [ ivec2(-32, 64) | ivec2(0, -2) | ivec2(1, 1) | ivec2(0, 0) | ivec2(0, 0) | ivec2(0, -2) | ivec2(-32, 64) | ivec2(0, 0) | ivec2(1, 1) | ivec2(0, 0) ];
5723*35238bceSAndroid Build Coastguard Worker            input float in2 = [ -20.125 | -8.25 | 3.5 | 1.0 | 1.0 | -0.5 | 2.0 | 0.0 | 36.8125 | 0.0 ];
5724*35238bceSAndroid Build Coastguard Worker            input float in3 = [ 0.0 | -0.5 | 1.0 | -20.125 | 36.8125 | 0.0 | -8.25 | 2.0 | 3.5 | 1.0 ];
5725*35238bceSAndroid Build Coastguard Worker            input int in4 = [ 2 | 11 | 1 | 0 | 8 | 5 | -66 | 255 | -192 | -12 ];
5726*35238bceSAndroid Build Coastguard Worker            input bool in5 = [ false | true | true | false | false | true | false | true | false | true ];
5727*35238bceSAndroid Build Coastguard Worker            input bool in6 = [ false | true | false | false | true | true | true | true | false | false ];
5728*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(-0.75, -0.0322580645161, -32.0, 64.0, -20.125, 0.0, 2.0, 0.0, 0.0) | mat3(1.0, 1.25, 0.0, -2.0, -8.25, -0.5, 11.0, 1.0, 1.0) | mat3(0.0, 0.5, 1.0, 1.0, 3.5, 1.0, 1.0, 1.0, 0.0) | mat3(-32.0, 64.0, 0.0, 0.0, 1.0, -20.125, 0.0, 0.0, 0.0) | mat3(-0.5, -2.25, 0.0, 0.0, 1.0, 36.8125, 8.0, 0.0, 1.0) | mat3(-32.0, 64.0, 0.0, -2.0, -0.5, 0.0, 5.0, 1.0, 1.0) | mat3(-0.75, -0.0322580645161, -32.0, 64.0, 2.0, -8.25, -66.0, 0.0, 1.0) | mat3(1.0, 1.25, 0.0, 0.0, 0.0, 2.0, 255.0, 1.0, 1.0) | mat3(0.0, 0.5, 1.0, 1.0, 36.8125, 3.5, -192.0, 0.0, 0.0) | mat3(-0.5, -2.25, 0.0, 0.0, 0.0, 1.0, -12.0, 1.0, 0.0) ];
5729*35238bceSAndroid Build Coastguard Worker        }
5730*35238bceSAndroid Build Coastguard Worker
5731*35238bceSAndroid Build Coastguard Worker        both ""
5732*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5733*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5734*35238bceSAndroid Build Coastguard Worker
5735*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5736*35238bceSAndroid Build Coastguard Worker
5737*35238bceSAndroid Build Coastguard Worker            void main()
5738*35238bceSAndroid Build Coastguard Worker            {
5739*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5740*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2, in3, in4, in5, in6);
5741*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5742*35238bceSAndroid Build Coastguard Worker            }
5743*35238bceSAndroid Build Coastguard Worker        ""
5744*35238bceSAndroid Build Coastguard Worker    end
5745*35238bceSAndroid Build Coastguard Worker
5746*35238bceSAndroid Build Coastguard Worker    case bool_float_int_vec2_bool_bvec2_float_to_mat3
5747*35238bceSAndroid Build Coastguard Worker        values
5748*35238bceSAndroid Build Coastguard Worker        {
5749*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ false | false | false | true | false | false | true | true | true | true ];
5750*35238bceSAndroid Build Coastguard Worker            input float in1 = [ 3.5 | -20.125 | 36.8125 | 0.0 | 2.0 | -8.25 | 1.0 | -0.5 | 1.0 | 0.0 ];
5751*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 255 | -192 | 11 | 0 | 8 | 5 | -66 | 2 | -12 | 1 ];
5752*35238bceSAndroid Build Coastguard Worker            input vec2 in3 = [ vec2(0.0, 0.5) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) | vec2(1.0, 1.25) | vec2(-0.5, -2.25) | vec2(-0.75, -0.0322580645161) | vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) | vec2(-32.0, 64.0) ];
5753*35238bceSAndroid Build Coastguard Worker            input bool in4 = [ true | true | false | false | false | true | false | true | false | true ];
5754*35238bceSAndroid Build Coastguard Worker            input bvec2 in5 = [ bvec2(false, false) | bvec2(false, false) | bvec2(true, true) | bvec2(false, true) | bvec2(true, true) | bvec2(false, false) | bvec2(true, false) | bvec2(true, false) | bvec2(false, false) | bvec2(false, true) ];
5755*35238bceSAndroid Build Coastguard Worker            input float in6 = [ 0.0 | 36.8125 | 3.5 | -0.5 | -8.25 | 1.0 | 0.0 | 1.0 | -20.125 | 2.0 ];
5756*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(0.0, 3.5, 255.0, 0.0, 0.5, 1.0, 0.0, 0.0, 0.0) | mat3(0.0, -20.125, -192.0, 0.0, 0.5, 1.0, 0.0, 0.0, 36.8125) | mat3(0.0, 36.8125, 11.0, -0.5, -2.25, 0.0, 1.0, 1.0, 3.5) | mat3(1.0, 0.0, 0.0, 1.0, 1.25, 0.0, 0.0, 1.0, -0.5) | mat3(0.0, 2.0, 8.0, -0.5, -2.25, 0.0, 1.0, 1.0, -8.25) | mat3(0.0, -8.25, 5.0, -0.75, -0.0322580645161, 1.0, 0.0, 0.0, 1.0) | mat3(1.0, 1.0, -66.0, -32.0, 64.0, 0.0, 1.0, 0.0, 0.0) | mat3(1.0, -0.5, 2.0, 1.0, 1.25, 1.0, 1.0, 0.0, 1.0) | mat3(1.0, 1.0, -12.0, -0.75, -0.0322580645161, 0.0, 0.0, 0.0, -20.125) | mat3(1.0, 0.0, 1.0, -32.0, 64.0, 1.0, 0.0, 1.0, 2.0) ];
5757*35238bceSAndroid Build Coastguard Worker        }
5758*35238bceSAndroid Build Coastguard Worker
5759*35238bceSAndroid Build Coastguard Worker        both ""
5760*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5761*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5762*35238bceSAndroid Build Coastguard Worker
5763*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5764*35238bceSAndroid Build Coastguard Worker
5765*35238bceSAndroid Build Coastguard Worker            void main()
5766*35238bceSAndroid Build Coastguard Worker            {
5767*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5768*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2, in3, in4, in5, in6);
5769*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5770*35238bceSAndroid Build Coastguard Worker            }
5771*35238bceSAndroid Build Coastguard Worker        ""
5772*35238bceSAndroid Build Coastguard Worker    end
5773*35238bceSAndroid Build Coastguard Worker
5774*35238bceSAndroid Build Coastguard Worker    case bool_bvec2_int_vec4_bool_to_mat3
5775*35238bceSAndroid Build Coastguard Worker        values
5776*35238bceSAndroid Build Coastguard Worker        {
5777*35238bceSAndroid Build Coastguard Worker            input bool in0 = [ true | false | false | false | false | true | true | true | true | false ];
5778*35238bceSAndroid Build Coastguard Worker            input bvec2 in1 = [ bvec2(true, true) | bvec2(false, false) | bvec2(false, true) | bvec2(false, false) | bvec2(false, false) | bvec2(true, false) | bvec2(false, false) | bvec2(true, true) | bvec2(true, false) | bvec2(false, true) ];
5779*35238bceSAndroid Build Coastguard Worker            input int in2 = [ 2 | -66 | 1 | 8 | -12 | 0 | 5 | 11 | 255 | -192 ];
5780*35238bceSAndroid Build Coastguard Worker            input vec4 in3 = [ vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(0.0, 0.5, 0.75, 0.825) | vec4(0.0, 0.5, 0.75, 0.825) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.5, -2.25, -4.875, 9.0) ];
5781*35238bceSAndroid Build Coastguard Worker            input bool in4 = [ false | false | true | true | true | false | true | false | false | true ];
5782*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(1.0, 1.0, 1.0, 2.0, 1.0, 1.25, 1.125, 1.75, 0.0) | mat3(0.0, 0.0, 0.0, -66.0, -0.5, -2.25, -4.875, 9.0, 0.0) | mat3(0.0, 0.0, 1.0, 1.0, -0.75, -0.0322580645161, 0.0526315789474, 0.25, 1.0) | mat3(0.0, 0.0, 0.0, 8.0, 1.0, 1.25, 1.125, 1.75, 1.0) | mat3(0.0, 0.0, 0.0, -12.0, -0.75, -0.0322580645161, 0.0526315789474, 0.25, 1.0) | mat3(1.0, 1.0, 0.0, 0.0, -32.0, 64.0, -51.0, 24.0, 0.0) | mat3(1.0, 0.0, 0.0, 5.0, 0.0, 0.5, 0.75, 0.825, 1.0) | mat3(1.0, 1.0, 1.0, 11.0, 0.0, 0.5, 0.75, 0.825, 0.0) | mat3(1.0, 1.0, 0.0, 255.0, -32.0, 64.0, -51.0, 24.0, 0.0) | mat3(0.0, 0.0, 1.0, -192.0, -0.5, -2.25, -4.875, 9.0, 1.0) ];
5783*35238bceSAndroid Build Coastguard Worker        }
5784*35238bceSAndroid Build Coastguard Worker
5785*35238bceSAndroid Build Coastguard Worker        both ""
5786*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5787*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5788*35238bceSAndroid Build Coastguard Worker
5789*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5790*35238bceSAndroid Build Coastguard Worker
5791*35238bceSAndroid Build Coastguard Worker            void main()
5792*35238bceSAndroid Build Coastguard Worker            {
5793*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5794*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2, in3, in4);
5795*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5796*35238bceSAndroid Build Coastguard Worker            }
5797*35238bceSAndroid Build Coastguard Worker        ""
5798*35238bceSAndroid Build Coastguard Worker    end
5799*35238bceSAndroid Build Coastguard Worker
5800*35238bceSAndroid Build Coastguard Worker    case float_bvec4_ivec2_bool_bool_to_mat3
5801*35238bceSAndroid Build Coastguard Worker        values
5802*35238bceSAndroid Build Coastguard Worker        {
5803*35238bceSAndroid Build Coastguard Worker            input float in0 = [ -0.5 | 36.8125 | 1.0 | 0.0 | -20.125 | 2.0 | -8.25 | 3.5 ];
5804*35238bceSAndroid Build Coastguard Worker            input bvec4 in1 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) | bvec4(true, true, true, true) | bvec4(false, false, false, true) | bvec4(true, false, false, true) | bvec4(false, true, false, false) ];
5805*35238bceSAndroid Build Coastguard Worker            input ivec2 in2 = [ ivec2(1, 1) | ivec2(0, 0) | ivec2(0, 0) | ivec2(0, -2) | ivec2(0, -2) | ivec2(0, 0) | ivec2(1, 1) | ivec2(-32, 64) ];
5806*35238bceSAndroid Build Coastguard Worker            input bool in3 = [ true | false | true | false | true | false | false | true ];
5807*35238bceSAndroid Build Coastguard Worker            input bool in4 = [ false | true | false | true | false | false | true | true ];
5808*35238bceSAndroid Build Coastguard Worker            output mat3 out0 = [ mat3(-0.5, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 0.0) | mat3(36.8125, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat3(1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0) | mat3(0.0, 0.0, 1.0, 0.0, 0.0, 0.0, -2.0, 0.0, 1.0) | mat3(-20.125, 1.0, 1.0, 1.0, 1.0, 0.0, -2.0, 1.0, 0.0) | mat3(2.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0) | mat3(-8.25, 1.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 1.0) | mat3(3.5, 0.0, 1.0, 0.0, 0.0, -32.0, 64.0, 1.0, 1.0) ];
5809*35238bceSAndroid Build Coastguard Worker        }
5810*35238bceSAndroid Build Coastguard Worker
5811*35238bceSAndroid Build Coastguard Worker        both ""
5812*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5813*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5814*35238bceSAndroid Build Coastguard Worker
5815*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5816*35238bceSAndroid Build Coastguard Worker
5817*35238bceSAndroid Build Coastguard Worker            void main()
5818*35238bceSAndroid Build Coastguard Worker            {
5819*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5820*35238bceSAndroid Build Coastguard Worker                out0 = mat3(in0, in1, in2, in3, in4);
5821*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5822*35238bceSAndroid Build Coastguard Worker            }
5823*35238bceSAndroid Build Coastguard Worker        ""
5824*35238bceSAndroid Build Coastguard Worker    end
5825*35238bceSAndroid Build Coastguard Worker
5826*35238bceSAndroid Build Coastguard Worker    case vec4_vec4_vec4_vec4_to_mat4
5827*35238bceSAndroid Build Coastguard Worker        values
5828*35238bceSAndroid Build Coastguard Worker        {
5829*35238bceSAndroid Build Coastguard Worker            input vec4 in0 = [ vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(0.0, 0.5, 0.75, 0.825) ];
5830*35238bceSAndroid Build Coastguard Worker            input vec4 in1 = [ vec4(1.0, 1.25, 1.125, 1.75) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(0.0, 0.5, 0.75, 0.825) ];
5831*35238bceSAndroid Build Coastguard Worker            input vec4 in2 = [ vec4(-32.0, 64.0, -51.0, 24.0) | vec4(0.0, 0.5, 0.75, 0.825) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) ];
5832*35238bceSAndroid Build Coastguard Worker            input vec4 in3 = [ vec4(-0.5, -2.25, -4.875, 9.0) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(0.0, 0.5, 0.75, 0.825) ];
5833*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(-32.0, 64.0, -51.0, 24.0, 1.0, 1.25, 1.125, 1.75, -32.0, 64.0, -51.0, 24.0, -0.5, -2.25, -4.875, 9.0) | mat4(-0.75, -0.0322580645161, 0.0526315789474, 0.25, -32.0, 64.0, -51.0, 24.0, 0.0, 0.5, 0.75, 0.825, -32.0, 64.0, -51.0, 24.0) | mat4(-0.5, -2.25, -4.875, 9.0, -0.75, -0.0322580645161, 0.0526315789474, 0.25, -0.75, -0.0322580645161, 0.0526315789474, 0.25, 1.0, 1.25, 1.125, 1.75) | mat4(1.0, 1.25, 1.125, 1.75, -0.5, -2.25, -4.875, 9.0, 1.0, 1.25, 1.125, 1.75, -0.75, -0.0322580645161, 0.0526315789474, 0.25) | mat4(0.0, 0.5, 0.75, 0.825, 0.0, 0.5, 0.75, 0.825, -0.5, -2.25, -4.875, 9.0, 0.0, 0.5, 0.75, 0.825) ];
5834*35238bceSAndroid Build Coastguard Worker        }
5835*35238bceSAndroid Build Coastguard Worker
5836*35238bceSAndroid Build Coastguard Worker        both ""
5837*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5838*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5839*35238bceSAndroid Build Coastguard Worker
5840*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5841*35238bceSAndroid Build Coastguard Worker
5842*35238bceSAndroid Build Coastguard Worker            void main()
5843*35238bceSAndroid Build Coastguard Worker            {
5844*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5845*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0, in1, in2, in3);
5846*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5847*35238bceSAndroid Build Coastguard Worker            }
5848*35238bceSAndroid Build Coastguard Worker        ""
5849*35238bceSAndroid Build Coastguard Worker    end
5850*35238bceSAndroid Build Coastguard Worker
5851*35238bceSAndroid Build Coastguard Worker    case ivec4_ivec4_ivec4_ivec4_to_mat4
5852*35238bceSAndroid Build Coastguard Worker        values
5853*35238bceSAndroid Build Coastguard Worker        {
5854*35238bceSAndroid Build Coastguard Worker            input ivec4 in0 = [ ivec4(0, 0, 0, 0) | ivec4(-32, 64, -51, 24) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(0, 0, 0, 0) ];
5855*35238bceSAndroid Build Coastguard Worker            input ivec4 in1 = [ ivec4(0, -2, -4, 9) | ivec4(1, 1, 1, 1) | ivec4(0, 0, 0, 0) | ivec4(0, 0, 0, 0) | ivec4(-32, 64, -51, 24) ];
5856*35238bceSAndroid Build Coastguard Worker            input ivec4 in2 = [ ivec4(0, 0, 0, 0) | ivec4(0, -2, -4, 9) | ivec4(1, 1, 1, 1) | ivec4(-32, 64, -51, 24) | ivec4(0, 0, 0, 0) ];
5857*35238bceSAndroid Build Coastguard Worker            input ivec4 in3 = [ ivec4(0, 0, 0, 0) | ivec4(1, 1, 1, 1) | ivec4(0, -2, -4, 9) | ivec4(0, 0, 0, 0) | ivec4(-32, 64, -51, 24) ];
5858*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(0.0, 0.0, 0.0, 0.0, 0.0, -2.0, -4.0, 9.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) | mat4(-32.0, 64.0, -51.0, 24.0, 1.0, 1.0, 1.0, 1.0, 0.0, -2.0, -4.0, 9.0, 1.0, 1.0, 1.0, 1.0) | mat4(1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 0.0, -2.0, -4.0, 9.0) | mat4(0.0, -2.0, -4.0, 9.0, 0.0, 0.0, 0.0, 0.0, -32.0, 64.0, -51.0, 24.0, 0.0, 0.0, 0.0, 0.0) | mat4(0.0, 0.0, 0.0, 0.0, -32.0, 64.0, -51.0, 24.0, 0.0, 0.0, 0.0, 0.0, -32.0, 64.0, -51.0, 24.0) ];
5859*35238bceSAndroid Build Coastguard Worker        }
5860*35238bceSAndroid Build Coastguard Worker
5861*35238bceSAndroid Build Coastguard Worker        both ""
5862*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5863*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5864*35238bceSAndroid Build Coastguard Worker
5865*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5866*35238bceSAndroid Build Coastguard Worker
5867*35238bceSAndroid Build Coastguard Worker            void main()
5868*35238bceSAndroid Build Coastguard Worker            {
5869*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5870*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0, in1, in2, in3);
5871*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5872*35238bceSAndroid Build Coastguard Worker            }
5873*35238bceSAndroid Build Coastguard Worker        ""
5874*35238bceSAndroid Build Coastguard Worker    end
5875*35238bceSAndroid Build Coastguard Worker
5876*35238bceSAndroid Build Coastguard Worker    case bvec4_bvec4_bvec4_bvec4_to_mat4
5877*35238bceSAndroid Build Coastguard Worker        values
5878*35238bceSAndroid Build Coastguard Worker        {
5879*35238bceSAndroid Build Coastguard Worker            input bvec4 in0 = [ bvec4(false, false, false, false) | bvec4(true, true, true, true) | bvec4(true, false, false, true) | bvec4(false, true, false, false) | bvec4(false, false, false, true) ];
5880*35238bceSAndroid Build Coastguard Worker            input bvec4 in1 = [ bvec4(true, true, true, true) | bvec4(false, false, false, true) | bvec4(false, true, false, false) | bvec4(true, false, false, true) | bvec4(false, false, false, false) ];
5881*35238bceSAndroid Build Coastguard Worker            input bvec4 in2 = [ bvec4(true, true, true, true) | bvec4(false, false, false, true) | bvec4(false, false, false, false) | bvec4(true, false, false, true) | bvec4(false, true, false, false) ];
5882*35238bceSAndroid Build Coastguard Worker            input bvec4 in3 = [ bvec4(true, false, false, true) | bvec4(false, false, false, true) | bvec4(true, true, true, true) | bvec4(false, false, false, false) | bvec4(false, true, false, false) ];
5883*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0) | mat4(1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0) | mat4(1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0) | mat4(0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0) | mat4(0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0) ];
5884*35238bceSAndroid Build Coastguard Worker        }
5885*35238bceSAndroid Build Coastguard Worker
5886*35238bceSAndroid Build Coastguard Worker        both ""
5887*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5888*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5889*35238bceSAndroid Build Coastguard Worker
5890*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5891*35238bceSAndroid Build Coastguard Worker
5892*35238bceSAndroid Build Coastguard Worker            void main()
5893*35238bceSAndroid Build Coastguard Worker            {
5894*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5895*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0, in1, in2, in3);
5896*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5897*35238bceSAndroid Build Coastguard Worker            }
5898*35238bceSAndroid Build Coastguard Worker        ""
5899*35238bceSAndroid Build Coastguard Worker    end
5900*35238bceSAndroid Build Coastguard Worker
5901*35238bceSAndroid Build Coastguard Worker    case float_ivec3_bvec3_vec4_ivec2_float_vec2_to_mat4
5902*35238bceSAndroid Build Coastguard Worker        values
5903*35238bceSAndroid Build Coastguard Worker        {
5904*35238bceSAndroid Build Coastguard Worker            input float in0 = [ -0.5 | -20.125 | 1.0 | 2.0 | 3.5 | 36.8125 | -8.25 | 0.0 ];
5905*35238bceSAndroid Build Coastguard Worker            input ivec3 in1 = [ ivec3(1, 1, 1) | ivec3(1, 1, 1) | ivec3(0, 0, 0) | ivec3(-32, 64, -51) | ivec3(0, 0, 0) | ivec3(0, -2, -4) | ivec3(0, 0, 0) | ivec3(0, -2, -4) ];
5906*35238bceSAndroid Build Coastguard Worker            input bvec3 in2 = [ bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, false, false) | bvec3(false, true, false) | bvec3(true, true, true) | bvec3(true, false, false) | bvec3(false, false, false) | bvec3(false, true, false) ];
5907*35238bceSAndroid Build Coastguard Worker            input vec4 in3 = [ vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.5, -2.25, -4.875, 9.0) | vec4(0.0, 0.5, 0.75, 0.825) | vec4(0.0, 0.5, 0.75, 0.825) | vec4(-32.0, 64.0, -51.0, 24.0) | vec4(1.0, 1.25, 1.125, 1.75) | vec4(-0.75, -0.0322580645161, 0.0526315789474, 0.25) | vec4(-0.5, -2.25, -4.875, 9.0) ];
5908*35238bceSAndroid Build Coastguard Worker            input ivec2 in4 = [ ivec2(0, 0) | ivec2(0, -2) | ivec2(0, 0) | ivec2(-32, 64) | ivec2(1, 1) | ivec2(0, -2) | ivec2(0, 0) | ivec2(1, 1) ];
5909*35238bceSAndroid Build Coastguard Worker            input float in5 = [ 3.5 | -20.125 | -8.25 | 0.0 | 36.8125 | -0.5 | 1.0 | 2.0 ];
5910*35238bceSAndroid Build Coastguard Worker            input vec2 in6 = [ vec2(-32.0, 64.0) | vec2(1.0, 1.25) | vec2(-0.75, -0.0322580645161) | vec2(-0.5, -2.25) | vec2(1.0, 1.25) | vec2(0.0, 0.5) | vec2(0.0, 0.5) | vec2(-0.5, -2.25) ];
5911*35238bceSAndroid Build Coastguard Worker            output mat4 out0 = [ mat4(-0.5, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 1.25, 1.125, 1.75, 0.0, 0.0, 3.5, -32.0, 64.0) | mat4(-20.125, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, -0.5, -2.25, -4.875, 9.0, 0.0, -2.0, -20.125, 1.0, 1.25) | mat4(1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.75, 0.825, 0.0, 0.0, -8.25, -0.75, -0.0322580645161) | mat4(2.0, -32.0, 64.0, -51.0, 0.0, 1.0, 0.0, 0.0, 0.5, 0.75, 0.825, -32.0, 64.0, 0.0, -0.5, -2.25) | mat4(3.5, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, -32.0, 64.0, -51.0, 24.0, 1.0, 1.0, 36.8125, 1.0, 1.25) | mat4(36.8125, 0.0, -2.0, -4.0, 1.0, 0.0, 0.0, 1.0, 1.25, 1.125, 1.75, 0.0, -2.0, -0.5, 0.0, 0.5) | mat4(-8.25, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, -0.75, -0.0322580645161, 0.0526315789474, 0.25, 0.0, 0.0, 1.0, 0.0, 0.5) | mat4(0.0, 0.0, -2.0, -4.0, 0.0, 1.0, 0.0, -0.5, -2.25, -4.875, 9.0, 1.0, 1.0, 2.0, -0.5, -2.25) ];
5912*35238bceSAndroid Build Coastguard Worker        }
5913*35238bceSAndroid Build Coastguard Worker
5914*35238bceSAndroid Build Coastguard Worker        both ""
5915*35238bceSAndroid Build Coastguard Worker            precision mediump float;
5916*35238bceSAndroid Build Coastguard Worker            precision mediump int;
5917*35238bceSAndroid Build Coastguard Worker
5918*35238bceSAndroid Build Coastguard Worker            ${DECLARATIONS}
5919*35238bceSAndroid Build Coastguard Worker
5920*35238bceSAndroid Build Coastguard Worker            void main()
5921*35238bceSAndroid Build Coastguard Worker            {
5922*35238bceSAndroid Build Coastguard Worker                ${SETUP}
5923*35238bceSAndroid Build Coastguard Worker                out0 = mat4(in0, in1, in2, in3, in4, in5, in6);
5924*35238bceSAndroid Build Coastguard Worker                ${OUTPUT}
5925*35238bceSAndroid Build Coastguard Worker            }
5926*35238bceSAndroid Build Coastguard Worker        ""
5927*35238bceSAndroid Build Coastguard Worker    end
5928*35238bceSAndroid Build Coastguard Worker
5929*35238bceSAndroid Build Coastguard Worker
5930*35238bceSAndroid Build Coastguard Workerend # matrix_combine
5931