xref: /aosp_15_r20/external/deqp/external/openglcts/data/gl_cts/data/gl42-compat/builtins.test (revision 35238bce31c2a825756842865a792f8cf7f89930)
1group builtins "Builtin Tests"
2
3    case core_gl_FragColor
4        version 420
5        expect compile_fail
6        vertex ""
7            #version 420
8            ${VERTEX_DECLARATIONS}
9            void main()
10            {
11                ${VERTEX_OUTPUT}
12            }
13        ""
14        fragment ""
15            #version 420
16            void main()
17            {
18                gl_FragColor = vec4(1.0);
19            }
20        ""
21    end
22
23    case core_gl_FragData
24        version 420
25        expect compile_fail
26        vertex ""
27            #version 420
28            ${VERTEX_DECLARATIONS}
29            void main()
30            {
31                ${VERTEX_OUTPUT}
32            }
33        ""
34        fragment ""
35            #version 420
36            void main()
37            {
38                gl_FragData[0] = vec4(1.0, 1.0, 1.0, 1.0);
39            }
40        ""
41    end
42
43    case core_gl_MaxVaryingFloats
44        version 420
45        expect compile_fail
46        vertex ""
47            #version 420
48            ${VERTEX_DECLARATIONS}
49            void main()
50            {
51                ${VERTEX_OUTPUT}
52            }
53        ""
54        fragment ""
55            #version 420
56            out vec4 color;
57            void main()
58            {
59                color = vec4(float(gl_MaxVaryingFloats));
60            }
61        ""
62    end
63
64    case core_texture_builtins
65        version 420
66        expect compile_fail
67        vertex ""
68            #version 420
69            ${VERTEX_DECLARATIONS}
70            void main()
71            {
72                ${VERTEX_OUTPUT}
73            }
74        ""
75        fragment ""
76            #version 420
77            uniform sampler1D tex1d;
78            uniform sampler2D tex2d;
79            uniform sampler3D tex3d;
80            uniform samplerCube texCube;
81
82            uniform float i;
83            uniform float dummy_f_coord;
84            uniform vec2 dummy_v2_coord;
85            uniform vec3 dummy_v3_coord;
86            uniform vec4 dummy_v4_coord;
87            out vec4 color;
88            void main()
89            {
90                color = texture1D(tex1d, dummy_f_coord, i);
91                color =+ texture1DProj(tex1d, dummy_v2_coord, i);
92                color =+ texture1DProj(tex1d, dummy_v4_coord, i);
93                color =+ texture1DLod(tex1d, dummy_f_coord, i);
94                color =+ texture1DProjLod(tex1d, dummy_v2_coord, i);
95                color =+ texture1DProjLod(tex1d, dummy_v4_coord, i);
96
97                color =+ texture2D(tex2d, dummy_v2_coord, i);
98                color =+ texture2DProj(tex2d, dummy_v3_coord, i);
99                color =+ texture2DProj(tex2d, dummy_v4_coord, i);
100                color =+ texture2DLod(tex2d, dummy_v2_coord, i);
101                color =+ texture2DProjLod(tex2d, dummy_v3_coord, i);
102                color =+ texture2DProjLod(tex2d, dummy_v4_coord, i);
103
104                color =+ texture3D(tex3d, dummy_v3_coord, i);
105                color =+ texture3DProj(tex3d, dummy_v4_coord, i);
106                color =+ texture3DLod(tex3d, dummy_v3_coord, i);
107                color =+ texture3DProjLod(tex3d, dummy_v4_coord, i);
108
109                color =+ textureCube(texCube, dummy_v3_coord, i);
110                color =+ textureCubeLod(texCube, dummy_v3_coord, i);
111            }
112        ""
113    end
114
115    case core_shadow_builtins
116        version 420
117        expect compile_fail
118        vertex ""
119            #version 420
120            ${VERTEX_DECLARATIONS}
121            void main()
122            {
123                ${VERTEX_OUTPUT}
124            }
125        ""
126        fragment ""
127            #version 420
128            uniform sampler1DShadow tex1dshadow;
129            uniform sampler2DShadow tex2dshadow;
130
131            uniform float i;
132            uniform vec3 dummy_v3_coord;
133            uniform vec4 dummy_v4_coord;
134            out vec4 color;
135            void main()
136            {
137                color = shadow1D(tex1dshadow, dummy_v3_coord, i);
138                color =+ shadow1DProj(tex1dshadow, dummy_v4_coord, i);
139                color =+ shadow1DLod(tex1dshadow, dummy_v3_coord, i);
140                color =+ shadow1DProjLod(tex1dshadow, dummy_v4_coord, i);
141
142                color =+ shadow2D(tex2dshadow, dummy_v3_coord, i);
143                color =+ shadow2DProj(tex2dshadow, dummy_v4_coord, i);
144                color =+ shadow2DLod(tex2dshadow, dummy_v3_coord, i);
145                color =+ shadow2DProjLod(tex2dshadow, dummy_v4_coord, i);
146            }
147        ""
148    end
149
150    case compatibility_gl_FragColor
151        version 420
152        vertex ""
153            #version 420 compatibility
154            ${VERTEX_DECLARATIONS}
155            void main()
156            {
157                ${VERTEX_OUTPUT}
158            }
159        ""
160        fragment ""
161            #version 420 compatibility
162            void main()
163            {
164                gl_FragColor = vec4(1.0);
165            }
166        ""
167    end
168
169    case compatibility_gl_FragData
170        version 420
171        vertex ""
172            #version 420 compatibility
173            ${VERTEX_DECLARATIONS}
174            void main()
175            {
176                ${VERTEX_OUTPUT}
177            }
178        ""
179        fragment ""
180            #version 420 compatibility
181            void main()
182            {
183                gl_FragData[0] = vec4(1.0, 1.0, 1.0, 1.0);
184            }
185        ""
186    end
187
188    case compatibility_gl_MaxVaryingFloats
189        version 420
190        vertex ""
191            #version 420 compatibility
192            ${VERTEX_DECLARATIONS}
193            void main()
194            {
195                ${VERTEX_OUTPUT}
196            }
197        ""
198        fragment ""
199            #version 420 compatibility
200            out vec4 color;
201            void main()
202            {
203                color = vec4(float(gl_MaxVaryingFloats));
204            }
205        ""
206    end
207
208    case compatibility_texture_builtins
209        version 420
210        vertex ""
211            #version 420 compatibility
212            ${VERTEX_DECLARATIONS}
213            void main()
214            {
215                ${VERTEX_OUTPUT}
216            }
217        ""
218        fragment ""
219            #version 420 compatibility
220            uniform sampler1D tex1d;
221            uniform sampler2D tex2d;
222            uniform sampler3D tex3d;
223            uniform samplerCube texCube;
224
225            uniform float i;
226            uniform float dummy_f_coord;
227            uniform vec2 dummy_v2_coord;
228            uniform vec3 dummy_v3_coord;
229            uniform vec4 dummy_v4_coord;
230            out vec4 color;
231            void main()
232            {
233                color = texture1D(tex1d, dummy_f_coord, i);
234                color =+ texture1DProj(tex1d, dummy_v2_coord, i);
235                color =+ texture1DProj(tex1d, dummy_v4_coord, i);
236                color =+ texture1DLod(tex1d, dummy_f_coord, i);
237                color =+ texture1DProjLod(tex1d, dummy_v2_coord, i);
238                color =+ texture1DProjLod(tex1d, dummy_v4_coord, i);
239
240                color =+ texture2D(tex2d, dummy_v2_coord, i);
241                color =+ texture2DProj(tex2d, dummy_v3_coord, i);
242                color =+ texture2DProj(tex2d, dummy_v4_coord, i);
243                color =+ texture2DLod(tex2d, dummy_v2_coord, i);
244                color =+ texture2DProjLod(tex2d, dummy_v3_coord, i);
245                color =+ texture2DProjLod(tex2d, dummy_v4_coord, i);
246
247                color =+ texture3D(tex3d, dummy_v3_coord, i);
248                color =+ texture3DProj(tex3d, dummy_v4_coord, i);
249                color =+ texture3DLod(tex3d, dummy_v3_coord, i);
250                color =+ texture3DProjLod(tex3d, dummy_v4_coord, i);
251
252                color =+ textureCube(texCube, dummy_v3_coord, i);
253                color =+ textureCubeLod(texCube, dummy_v3_coord, i);
254            }
255        ""
256    end
257
258    case compatibility_shadow_builtins
259        version 420
260        vertex ""
261            #version 420 compatibility
262            ${VERTEX_DECLARATIONS}
263            void main()
264            {
265                ${VERTEX_OUTPUT}
266            }
267        ""
268        fragment ""
269            #version 420 compatibility
270            uniform sampler1DShadow tex1dshadow;
271            uniform sampler2DShadow tex2dshadow;
272
273            uniform float i;
274            uniform vec3 dummy_v3_coord;
275            uniform vec4 dummy_v4_coord;
276            out vec4 color;
277            void main()
278            {
279                color = shadow1D(tex1dshadow, dummy_v3_coord, i);
280                color =+ shadow1DProj(tex1dshadow, dummy_v4_coord, i);
281                color =+ shadow1DLod(tex1dshadow, dummy_v3_coord, i);
282                color =+ shadow1DProjLod(tex1dshadow, dummy_v4_coord, i);
283
284                color =+ shadow2D(tex2dshadow, dummy_v3_coord, i);
285                color =+ shadow2DProj(tex2dshadow, dummy_v4_coord, i);
286                color =+ shadow2DLod(tex2dshadow, dummy_v3_coord, i);
287                color =+ shadow2DProjLod(tex2dshadow, dummy_v4_coord, i);
288            }
289        ""
290    end
291
292end
293