perf/pixel-rate: new pixel throughput microbenchmark
[piglit.git] / tests / spec / glsl-1.10 / execution / variable-indexing / fs-input-array-vec2-index-rd.shader_test
blobbdbd45f3cd145e46cc4f74786524c1ec335b39f6
1 [require]
2 GLSL >= 1.10
4 [vertex shader]
5 varying vec2 m1[4];
6 varying vec2 m2[4];
8 void main()
10     gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
12     m1[0] = vec2(1.0, 1.1);
13     m1[1] = vec2(2.0, 2.1);
14     m1[2] = vec2(3.0, 3.1);
15     m1[3] = vec2(4.0, 4.1);
16     m2[0] = vec2(5.0, 5.1);
17     m2[1] = vec2(6.0, 6.1);
18     m2[2] = vec2(7.0, 7.1);
19     m2[3] = vec2(8.0, 8.1);
22 [fragment shader]
23 uniform int index;
24 uniform vec2 expect;
25 varying vec2 m1[4];
26 varying vec2 m2[4];
28 void main()
30     gl_FragColor = ((index >= 4 ? m2[index-4] : m1[index]) == expect)
31         ? vec4(0.0, 1.0, 0.0, 1.0) : vec4(1.0, 0.0, 0.0, 1.0);
34 [test]
35 clear color 0.5 0.5 0.5 0.5
36 clear
37 ortho
39 uniform int index 0
40 uniform vec2 expect 1 1.1
41 draw rect 5 5 10 10
42 probe rgb 10 10 0.0 1.0 0.0
44 uniform int index 1
45 uniform vec2 expect 2 2.1
46 draw rect 30 5 10 10
47 probe rgb 35 10 0.0 1.0 0.0
49 uniform int index 2
50 uniform vec2 expect 3 3.1
51 draw rect 55 5 10 10
52 probe rgb 60 10 0.0 1.0 0.0
54 uniform int index 3
55 uniform vec2 expect 4 4.1
56 draw rect 80 5 10 10
57 probe rgb 85 10 0.0 1.0 0.0
59 uniform int index 4
60 uniform vec2 expect 5 5.1
61 draw rect 105 5 10 10
62 probe rgb 110 10 0.0 1.0 0.0
64 uniform int index 5
65 uniform vec2 expect 6 6.1
66 draw rect 130 5 10 10
67 probe rgb 135 10 0.0 1.0 0.0
69 uniform int index 6
70 uniform vec2 expect 7 7.1
71 draw rect 155 5 10 10
72 probe rgb 160 10 0.0 1.0 0.0
74 uniform int index 7
75 uniform vec2 expect 8 8.1
76 draw rect 180 5 10 10
77 probe rgb 185 10 0.0 1.0 0.0