1 <%! from six.moves import range %>
2 ## Test execution of pack2x16 functions in the vertex shader.
8 #extension GL_ARB_shading_language_packing : require
11 const vec4 red = vec4(1, 0, 0, 1);
12 const vec4 green = vec4(0, 1, 0, 1);
14 uniform ${func.vector_type} func_input;
16 % for j in range(func.num_valid_outputs):
17 uniform ${func.result_precision} uint expect${j};
26 ${func.result_precision} uint actual = ${func.name}(func_input);
29 % for j in range(func.num_valid_outputs):
30 || actual == expect${j}
41 precision highp float;
49 frag_color = vert_color;
60 % for io in func.inout_seq:
61 uniform ${func.vector_type} func_input ${" ".join(io.input)}
62 % for j in range(func.num_valid_outputs):
63 uniform uint expect${j} ${io.valid_outputs[j]}
65 draw arrays GL_TRIANGLE_FAN 0 4
66 probe all rgba 0.0 1.0 0.0 1.0