ARB_ubo/referenced-by-shader: pass if shader compiler moves UBOs between shaders
[piglit.git] / tests / spec / mesa_shader_integer_functions / compiler / implicit-conversions-01.vert
blob86ab2e2966f4e28d7188d1b6c04f813ca2cf771c
1 // [config]
2 // expect_result: pass
3 // glsl_version: 1.30
4 // require_extensions: GL_MESA_shader_integer_functions
5 // [end config]
7 // Test that implicit conversions are allowed as specified in MESA_shader_integer_functions.
10 #version 130
11 #extension GL_MESA_shader_integer_functions : enable
13 int _int = 0;
14 ivec2 _ivec2 = ivec2(0);
15 ivec3 _ivec3 = ivec3(0);
16 ivec4 _ivec4 = ivec4(0);
18 uint _uint = 0u;
19 uvec2 _uvec2 = uvec2(0u);
20 uvec3 _uvec3 = uvec3(0u);
21 uvec4 _uvec4 = uvec4(0u);
23 float _float = 0.0f;
24 vec2 _vec2 = vec2(0.0f);
25 vec3 _vec3 = vec3(0.0f);
26 vec4 _vec4 = vec4(0.0f);
28 void test() {
30         /* int can be converted to uint and to float (and for vectors of same) */
31         _uint = _int;
32         _float = _int;
34         _uvec2 = _ivec2;
35         _vec2 = _ivec2;
37         _uvec3 = _ivec3;
38         _vec3 = _ivec3;
40         _uvec4 = _ivec4;
41         _vec4 = _ivec4;
43         /* uint can be converted to float (and for vectors of same) */
44         _float = _uint;
46         _vec2 = _uvec2;
48         _vec3 = _uvec3;
50         _vec4 = _uvec4;