• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2020 Google LLC
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6sksl_error_tests = [
7  "/sksl/errors/ArgumentCountMismatch.sksl",
8  "/sksl/errors/ArgumentMismatch.sksl",
9  "/sksl/errors/ArgumentModifiers.sksl",
10  "/sksl/errors/ArrayConstructorElementCount.sksl",
11  "/sksl/errors/ArrayIndexOutOfRange.sksl",
12  "/sksl/errors/ArrayInlinedIndexOutOfRange.sksl",
13  "/sksl/errors/ArrayNegation.sksl",
14  "/sksl/errors/ArrayOfInvalidSize.sksl",
15  "/sksl/errors/ArrayOfVoid.sksl",
16  "/sksl/errors/ArrayOfVoidInStruct.sksl",
17  "/sksl/errors/ArrayPlus.sksl",
18  "/sksl/errors/ArrayReturnTypes.sksl",
19  "/sksl/errors/ArraySplitDimensions.sksl",
20  "/sksl/errors/ArraySplitDimensionsInFuncBody.sksl",
21  "/sksl/errors/ArraySplitDimensionsInFuncDecl.sksl",
22  "/sksl/errors/ArraySplitDimensionsInStruct.sksl",
23  "/sksl/errors/ArrayTooManyDimensions.sksl",
24  "/sksl/errors/ArrayTooManyDimensionsInFuncBody.sksl",
25  "/sksl/errors/ArrayTooManyDimensionsInFuncDecl.sksl",
26  "/sksl/errors/ArrayTooManyDimensionsInStruct.sksl",
27  "/sksl/errors/ArrayTypeTooManyDimensions.sksl",
28  "/sksl/errors/ArrayTypeTooManyDimensionsInFuncBody.sksl",
29  "/sksl/errors/ArrayTypeTooManyDimensionsInFuncDecl.sksl",
30  "/sksl/errors/ArrayTypeTooManyDimensionsInStruct.sksl",
31  "/sksl/errors/ArrayUnspecifiedDimensions.sksl",
32  "/sksl/errors/AssignmentTypeMismatch.sksl",
33  "/sksl/errors/BadCaps.sksl",
34  "/sksl/errors/BadConstInitializers.sksl",
35  "/sksl/errors/BadFieldAccess.sksl",
36  "/sksl/errors/BadIndex.sksl",
37  "/sksl/errors/BadModifiers.sksl",
38  "/sksl/errors/BinaryInvalidType.sksl",
39  "/sksl/errors/BinaryTypeCoercion.sksl",
40  "/sksl/errors/BinaryTypeMismatch.sksl",
41  "/sksl/errors/BitShiftFloat.sksl",
42  "/sksl/errors/BitShiftFloatMatrix.sksl",
43  "/sksl/errors/BitShiftFloatVector.sksl",
44  "/sksl/errors/BooleanArithmetic.sksl",
45  "/sksl/errors/BreakOutsideLoop.sksl",
46  "/sksl/errors/CallNonFunction.sksl",
47  "/sksl/errors/CanExitWithoutReturningValue.sksl",
48  "/sksl/errors/ConstructorArgumentCount.sksl",
49  "/sksl/errors/ConstructorTypeMismatch.sksl",
50  "/sksl/errors/ContinueOutsideLoop.sksl",
51  "/sksl/errors/DivideByZero.sksl",
52  "/sksl/errors/DoTypeMismatch.sksl",
53  "/sksl/errors/DuplicateFunction.sksl",
54  "/sksl/errors/DuplicateOutput.sksl",
55  "/sksl/errors/DuplicateSymbol.sksl",
56  "/sksl/errors/EmptyArray.sksl",
57  "/sksl/errors/EmptyStruct.sksl",
58  "/sksl/errors/ErrorsInDeadCode.sksl",
59  "/sksl/errors/FloatRemainder.sksl",
60  "/sksl/errors/ForInitStmt.sksl",
61  "/sksl/errors/ForTypeMismatch.sksl",
62  "/sksl/errors/FunctionParameterOfVoid.sksl",
63  "/sksl/errors/GenericArgumentMismatch.sksl",
64  "/sksl/errors/PrecisionQualifiersDisallowed.sksl",
65  "/sksl/errors/IfTypeMismatch.sksl",
66  "/sksl/errors/InVarWithInitializerExpression.sksl",
67  "/sksl/errors/IncompleteExpression.sksl",
68  "/sksl/errors/IncompleteFunctionCall.sksl",
69  "/sksl/errors/InterfaceBlockScope.sksl",
70  "/sksl/errors/InterfaceBlockStorageModifiers.sksl",
71  "/sksl/errors/InterfaceBlockWithNoMembers.sksl",
72  "/sksl/errors/IntrinsicInGlobalVariable.sksl",
73  "/sksl/errors/InvalidAssignment.sksl",
74  "/sksl/errors/InvalidOutParams.sksl",
75  "/sksl/errors/InvalidToken.sksl",
76  "/sksl/errors/InvalidUnary.sksl",
77  "/sksl/errors/LastFragColorWithoutCaps.sksl",
78  "/sksl/errors/LayoutInFunctions.sksl",
79  "/sksl/errors/LayoutRepeatedQualifiers.sksl",
80  "/sksl/errors/MatrixIndexOutOfRange.sksl",
81  "/sksl/errors/MatrixInlinedIndexOutOfRange.sksl",
82  "/sksl/errors/MatrixToVectorCast3x3.sksl",
83  "/sksl/errors/MatrixToVectorCastBoolean.sksl",
84  "/sksl/errors/MatrixToVectorCastInteger.sksl",
85  "/sksl/errors/MatrixToVectorCastTooSmall.sksl",
86  "/sksl/errors/MismatchedNumbers.sksl",
87  "/sksl/errors/ModifiersInStruct.sksl",
88  "/sksl/errors/NoES3ModifierInUserCode.sksl",
89  "/sksl/errors/OpaqueTypeAssignment.sksl",
90  "/sksl/errors/OpaqueTypeConstruction.sksl",
91  "/sksl/errors/OpaqueTypeInArray.sksl",
92  "/sksl/errors/OpaqueTypeInInterfaceBlock.sksl",
93  "/sksl/errors/OpaqueTypeInStruct.sksl",
94  "/sksl/errors/OpenArray.sksl",
95  "/sksl/errors/Ossfuzz26700.sksl",
96  "/sksl/errors/Ossfuzz27614.sksl",
97  "/sksl/errors/Ossfuzz27650.sksl",
98  "/sksl/errors/Ossfuzz27663.sksl",
99  "/sksl/errors/Ossfuzz28050.sksl",
100  "/sksl/errors/Ossfuzz29444.sksl",
101  "/sksl/errors/Ossfuzz29845.sksl",
102  "/sksl/errors/Ossfuzz29849.sksl",
103  "/sksl/errors/Ossfuzz31410.sksl",
104  "/sksl/errors/Ossfuzz31469.sksl",
105  "/sksl/errors/Ossfuzz32156.sksl",
106  "/sksl/errors/Ossfuzz32587.sksl",
107  "/sksl/errors/Ossfuzz32851.sksl",
108  "/sksl/errors/Ossfuzz37457.sksl",
109  "/sksl/errors/Ossfuzz37465.sksl",
110  "/sksl/errors/Ossfuzz37620.sksl",
111  "/sksl/errors/Ossfuzz38106.sksl",
112  "/sksl/errors/Ossfuzz38107.sksl",
113  "/sksl/errors/Ossfuzz38108.sksl",
114  "/sksl/errors/Ossfuzz38140.sksl",
115  "/sksl/errors/Ossfuzz38560.sksl",
116  "/sksl/errors/Ossfuzz38865.sksl",
117  "/sksl/errors/Ossfuzz38944.sksl",
118  "/sksl/errors/Ossfuzz39000.sksl",
119  "/sksl/errors/Ossfuzz40427.sksl",
120  "/sksl/errors/Ossfuzz40428.sksl",
121  "/sksl/errors/Ossfuzz40479.sksl",
122  "/sksl/errors/Ossfuzz40660.sksl",
123  "/sksl/errors/OverflowFloatLiteral.sksl",
124  "/sksl/errors/OverflowInlinedLiteral.sksl",
125  "/sksl/errors/OverflowIntLiteral.sksl",
126  "/sksl/errors/OverflowInt64Literal.sksl",
127  "/sksl/errors/OverflowParamArraySize.sksl",
128  "/sksl/errors/OverflowUintLiteral.sksl",
129  "/sksl/errors/ProgramTooLarge_Globals.sksl",
130  "/sksl/errors/ProgramTooLarge_Stack.sksl",
131  "/sksl/errors/PrototypeInFuncBody.sksl",
132  "/sksl/errors/PrivateTypes.sksl",
133  "/sksl/errors/RedeclareBasicType.sksl",
134  "/sksl/errors/RedeclareSamplerType.sksl",
135  "/sksl/errors/RedeclareStruct.sksl",
136  "/sksl/errors/RedeclareStructTypeWithName.sksl",
137  "/sksl/errors/RedeclareUserType.sksl",
138  "/sksl/errors/RedeclareVariable.sksl",
139  "/sksl/errors/ReservedNameAsm.sksl",
140  "/sksl/errors/ReservedNameAttribute.sksl",
141  "/sksl/errors/ReservedNameCast.sksl",
142  "/sksl/errors/ReservedNameDouble.sksl",
143  "/sksl/errors/ReservedNameDvec2.sksl",
144  "/sksl/errors/ReservedNameDvec3.sksl",
145  "/sksl/errors/ReservedNameDvec4.sksl",
146  "/sksl/errors/ReservedNameEnum.sksl",
147  "/sksl/errors/ReservedNameExtern.sksl",
148  "/sksl/errors/ReservedNameExternal.sksl",
149  "/sksl/errors/ReservedNameFixed.sksl",
150  "/sksl/errors/ReservedNameFvec2.sksl",
151  "/sksl/errors/ReservedNameFvec3.sksl",
152  "/sksl/errors/ReservedNameFvec4.sksl",
153  "/sksl/errors/ReservedNameGoto.sksl",
154  "/sksl/errors/ReservedNameHvec2.sksl",
155  "/sksl/errors/ReservedNameHvec3.sksl",
156  "/sksl/errors/ReservedNameHvec4.sksl",
157  "/sksl/errors/ReservedNameInput.sksl",
158  "/sksl/errors/ReservedNameInterface.sksl",
159  "/sksl/errors/ReservedNameInvariant.sksl",
160  "/sksl/errors/ReservedNameLong.sksl",
161  "/sksl/errors/ReservedNameNamespace.sksl",
162  "/sksl/errors/ReservedNameOutput.sksl",
163  "/sksl/errors/ReservedNamePacked.sksl",
164  "/sksl/errors/ReservedNamePrecision.sksl",
165  "/sksl/errors/ReservedNamePublic.sksl",
166  "/sksl/errors/ReservedNameSampler1DShadow.sksl",
167  "/sksl/errors/ReservedNameSampler2DRectShadow.sksl",
168  "/sksl/errors/ReservedNameSampler2DShadow.sksl",
169  "/sksl/errors/ReservedNameSampler3DRect.sksl",
170  "/sksl/errors/ReservedNameSamplerCube.sksl",
171  "/sksl/errors/ReservedNameSizeof.sksl",
172  "/sksl/errors/ReservedNameStatic.sksl",
173  "/sksl/errors/ReservedNameSuperp.sksl",
174  "/sksl/errors/ReservedNameTemplate.sksl",
175  "/sksl/errors/ReservedNameThis.sksl",
176  "/sksl/errors/ReservedNameTypedef.sksl",
177  "/sksl/errors/ReservedNameUnion.sksl",
178  "/sksl/errors/ReservedNameUnsigned.sksl",
179  "/sksl/errors/ReservedNameUsing.sksl",
180  "/sksl/errors/ReservedNameVarying.sksl",
181  "/sksl/errors/ReservedNameVolatile.sksl",
182  "/sksl/errors/ReturnDifferentType.sksl",
183  "/sksl/errors/ReturnFromVoid.sksl",
184  "/sksl/errors/ReturnMissingValue.sksl",
185  "/sksl/errors/ReturnTypeMismatch.sksl",
186  "/sksl/errors/SelfReferentialInitializerExpression.sksl",
187  "/sksl/errors/SpuriousFloat.sksl",
188  "/sksl/errors/StaticIfTest.sksl",
189  "/sksl/errors/StaticSwitchConditionalBreak.sksl",
190  "/sksl/errors/StaticSwitchTest.sksl",
191  "/sksl/errors/StaticSwitchWithConditionalBreak.sksl",
192  "/sksl/errors/StaticSwitchWithConditionalContinue.sksl",
193  "/sksl/errors/StaticSwitchWithConditionalReturn.sksl",
194  "/sksl/errors/StructNameWithoutIdentifier.sksl",
195  "/sksl/errors/StructTooDeeplyNested.sksl",
196  "/sksl/errors/SwitchDuplicateCase.sksl",
197  "/sksl/errors/SwitchDuplicateDefault.sksl",
198  "/sksl/errors/SwitchTypes.sksl",
199  "/sksl/errors/SwitchWithContinueInside.sksl",
200  "/sksl/errors/SwizzleConstantOutput.sksl",
201  "/sksl/errors/SwizzleDomain.sksl",
202  "/sksl/errors/SwizzleMatrix.sksl",
203  "/sksl/errors/SwizzleOnlyLiterals.sksl",
204  "/sksl/errors/SwizzleOutOfBounds.sksl",
205  "/sksl/errors/SwizzleTooManyComponents.sksl",
206  "/sksl/errors/TernaryMismatch.sksl",
207  "/sksl/errors/UndeclaredFunction.sksl",
208  "/sksl/errors/UndefinedFunction.sksl",
209  "/sksl/errors/UndefinedSymbol.sksl",
210  "/sksl/errors/UniformVarWithInitializerExpression.sksl",
211  "/sksl/errors/UnknownDivideByZero.sksl",
212  "/sksl/errors/UnsupportedGLSLIdentifiers.sksl",
213  "/sksl/errors/UnscopedVariableInDoWhile.sksl",
214  "/sksl/errors/UnscopedVariableInElse.sksl",
215  "/sksl/errors/UnscopedVariableInFor.sksl",
216  "/sksl/errors/UnscopedVariableInIf.sksl",
217  "/sksl/errors/UnscopedVariableInWhile.sksl",
218  "/sksl/errors/UsingInvalidValue.sksl",
219  "/sksl/errors/VectorIndexOutOfRange.sksl",
220  "/sksl/errors/VectorInlinedIndexOutOfRange.sksl",
221  "/sksl/errors/VectorSlice.sksl",
222  "/sksl/errors/VertexEarlyReturn.vert",
223  "/sksl/errors/WhileTypeMismatch.sksl",
224]
225
226sksl_glsl_tests = [
227  "/sksl/glsl/ForceHighPrecision.sksl",
228  "/sksl/glsl/IncompleteShortIntPrecision.sksl",
229  "/sksl/glsl/LastFragColor.sksl",
230  "/sksl/glsl/LayoutQualifiers.sksl",
231  "/sksl/glsl/ShortIntPrecision.sksl",
232  "/sksl/glsl/TextureSharpenVersion110.sksl",
233  "/sksl/glsl/TextureVersion110.sksl",
234  "/sksl/glsl/UsesPrecisionModifiers.sksl",
235  "/sksl/glsl/Version110.sksl",
236  "/sksl/glsl/Version450Core.sksl",
237]
238
239sksl_metal_tests = [
240  "/sksl/metal/CastHalf4ToMat2x2.sksl",
241  "/sksl/metal/CastMat2x2ToMat3x3.sksl",
242  "/sksl/metal/CastMat2x3ToMat4x4.sksl",
243  "/sksl/metal/CastMat4x4ToMat3x4.sksl",
244  "/sksl/metal/CastMat4x4ToMat4x3.sksl",
245  "/sksl/metal/NumericGlobals.sksl",
246  "/sksl/metal/OpaqueTypeInInterfaceBlock.sksl",
247  "/sksl/metal/OpaqueTypeInStruct.sksl",
248  "/sksl/metal/OutParams.sksl",
249  "/sksl/metal/OutVarsRequireLocation.sksl",
250  "/sksl/metal/SamplerGlobals.sksl",
251  "/sksl/metal/SwizzleHelper.sksl",
252]
253
254sksl_spirv_tests = [
255  "/sksl/spirv/ConstantVectorFromVector.sksl",
256  "/sksl/spirv/InterfaceBlockPushConstant.sksl",
257  "/sksl/spirv/LayoutMultipleOf4.sksl",
258  "/sksl/spirv/LayoutOutOfOrder.sksl",
259  "/sksl/spirv/OpaqueTypeInArray.sksl",
260  "/sksl/spirv/Ossfuzz35916.sksl",
261  "/sksl/spirv/Ossfuzz37627.sksl",
262  "/sksl/workarounds/RewriteMatrixVectorMultiply.sksl",
263  "/sksl/errors/Ossfuzz36850.sksl",
264  "/sksl/errors/Ossfuzz37469.sksl",
265  "/sksl/errors/UndefinedFunction.sksl",
266  "/sksl/errors/UnusedInterfaceBlock.sksl",
267]
268
269sksl_shared_tests = [
270  "/sksl/intrinsics/AbsFloat.sksl",
271  "/sksl/intrinsics/AbsInt.sksl",
272  "/sksl/intrinsics/Acos.sksl",
273  "/sksl/intrinsics/Acosh.sksl",
274  "/sksl/intrinsics/All.sksl",
275  "/sksl/intrinsics/Any.sksl",
276  "/sksl/intrinsics/Asin.sksl",
277  "/sksl/intrinsics/Asinh.sksl",
278  "/sksl/intrinsics/Atan.sksl",
279  "/sksl/intrinsics/Atanh.sksl",
280  "/sksl/intrinsics/BitCount.sksl",
281  "/sksl/intrinsics/Ceil.sksl",
282  "/sksl/intrinsics/ClampFloat.sksl",
283  "/sksl/intrinsics/ClampInt.sksl",
284  "/sksl/intrinsics/ClampUInt.sksl",
285  "/sksl/intrinsics/Cos.sksl",
286  "/sksl/intrinsics/Cosh.sksl",
287  "/sksl/intrinsics/Cross.sksl",
288  "/sksl/intrinsics/CrossNoInline.sksl",
289  "/sksl/intrinsics/Degrees.sksl",
290  "/sksl/intrinsics/Determinant.sksl",
291  "/sksl/intrinsics/DFdx.sksl",
292  "/sksl/intrinsics/DFdy.sksl",
293  "/sksl/intrinsics/Distance.sksl",
294  "/sksl/intrinsics/Dot.sksl",
295  "/sksl/intrinsics/Equal.sksl",
296  "/sksl/intrinsics/Exp.sksl",
297  "/sksl/intrinsics/Exp2.sksl",
298  "/sksl/intrinsics/FaceForward.sksl",
299  "/sksl/intrinsics/FindLSB.sksl",
300  "/sksl/intrinsics/FindMSB.sksl",
301  "/sksl/intrinsics/FloatBitsToInt.sksl",
302  "/sksl/intrinsics/FloatBitsToUint.sksl",
303  "/sksl/intrinsics/Floor.sksl",
304  "/sksl/intrinsics/Fma.sksl",
305  "/sksl/intrinsics/Fract.sksl",
306  "/sksl/intrinsics/Frexp.sksl",
307  "/sksl/intrinsics/Fwidth.sksl",
308  "/sksl/intrinsics/GreaterThan.sksl",
309  "/sksl/intrinsics/GreaterThanEqual.sksl",
310  "/sksl/intrinsics/IntBitsToFloat.sksl",
311  "/sksl/intrinsics/Inverse.sksl",
312  "/sksl/intrinsics/Inversesqrt.sksl",
313  "/sksl/intrinsics/IsInf.sksl",
314  "/sksl/intrinsics/IsNan.sksl",
315  "/sksl/intrinsics/Ldexp.sksl",
316  "/sksl/intrinsics/Length.sksl",
317  "/sksl/intrinsics/LessThan.sksl",
318  "/sksl/intrinsics/LessThanEqual.sksl",
319  "/sksl/intrinsics/Log.sksl",
320  "/sksl/intrinsics/Log2.sksl",
321  "/sksl/intrinsics/MatrixCompMultES2.sksl",
322  "/sksl/intrinsics/MatrixCompMultES3.sksl",
323  "/sksl/intrinsics/MaxFloat.sksl",
324  "/sksl/intrinsics/MaxInt.sksl",
325  "/sksl/intrinsics/MinFloat.sksl",
326  "/sksl/intrinsics/MinInt.sksl",
327  "/sksl/intrinsics/MixFloat.sksl",
328  "/sksl/intrinsics/MixBool.sksl",
329  "/sksl/intrinsics/Mod.sksl",
330  "/sksl/intrinsics/Modf.sksl",
331  "/sksl/intrinsics/Normalize.sksl",
332  "/sksl/intrinsics/Not.sksl",
333  "/sksl/intrinsics/NotEqual.sksl",
334  "/sksl/intrinsics/OuterProduct.sksl",
335  "/sksl/intrinsics/Pack.sksl",
336  "/sksl/intrinsics/PackUnorm2x16.sksl",
337  "/sksl/intrinsics/Pow.sksl",
338  "/sksl/intrinsics/Radians.sksl",
339  "/sksl/intrinsics/Reflect.sksl",
340  "/sksl/intrinsics/Refract.sksl",
341  "/sksl/intrinsics/Round.sksl",
342  "/sksl/intrinsics/RoundEven.sksl",
343  "/sksl/intrinsics/Saturate.sksl",
344  "/sksl/intrinsics/SignFloat.sksl",
345  "/sksl/intrinsics/SignInt.sksl",
346  "/sksl/intrinsics/Sin.sksl",
347  "/sksl/intrinsics/Sinh.sksl",
348  "/sksl/intrinsics/Smoothstep.sksl",
349  "/sksl/intrinsics/Sqrt.sksl",
350  "/sksl/intrinsics/Step.sksl",
351  "/sksl/intrinsics/Tan.sksl",
352  "/sksl/intrinsics/Tanh.sksl",
353  "/sksl/intrinsics/Transpose.sksl",
354  "/sksl/intrinsics/Trunc.sksl",
355  "/sksl/intrinsics/UintBitsToFloat.sksl",
356  "/sksl/intrinsics/Unpack.sksl",
357  "/sksl/shared/ArrayCast.sksl",
358  "/sksl/shared/ArrayComparison.sksl",
359  "/sksl/shared/ArrayConstructors.sksl",
360  "/sksl/shared/ArrayFollowedByScalar.sksl",
361  "/sksl/shared/ArrayIndexTypes.sksl",
362  "/sksl/shared/ArrayNarrowingConversions.sksl",
363  "/sksl/shared/ArrayTypes.sksl",
364  "/sksl/shared/Assignment.sksl",
365  "/sksl/shared/Caps.sksl",
366  "/sksl/shared/CastsRoundTowardZero.sksl",
367  "/sksl/shared/Clockwise.sksl",
368  "/sksl/shared/CommaMixedTypes.sksl",
369  "/sksl/shared/CommaSideEffects.sksl",
370  "/sksl/shared/ComplexDelete.sksl",
371  "/sksl/shared/ConstArray.sksl",
372  "/sksl/shared/ConstVariableComparison.sksl",
373  "/sksl/shared/ConstantIf.sksl",
374  "/sksl/shared/Control.sksl",
375  "/sksl/shared/DeadDoWhileLoop.sksl",
376  "/sksl/shared/DeadIfStatement.sksl",
377  "/sksl/shared/DeadLoopVariable.sksl",
378  "/sksl/shared/DeadReturn.sksl",
379  "/sksl/shared/DeadReturnES3.sksl",
380  "/sksl/shared/DeadStripFunctions.sksl",
381  "/sksl/shared/DependentInitializers.sksl",
382  "/sksl/shared/DerivativesUnused.sksl",
383  "/sksl/shared/Discard.sksl",
384  "/sksl/shared/DoWhileControlFlow.sksl",
385  "/sksl/shared/EmptyBlocksES2.sksl",
386  "/sksl/shared/EmptyBlocksES3.sksl",
387  "/sksl/shared/ForLoopControlFlow.sksl",
388  "/sksl/shared/ForLoopMultipleInit.sksl",
389  "/sksl/shared/FragCoords.sksl",
390  "/sksl/shared/FunctionArgTypeMatch.sksl",
391  "/sksl/shared/FunctionReturnTypeMatch.sksl",
392  "/sksl/shared/FunctionPrototype.sksl",
393  "/sksl/shared/Functions.sksl",
394  "/sksl/shared/GaussianBlur.sksl",
395  "/sksl/shared/GeometricIntrinsics.sksl",
396  "/sksl/shared/HelloWorld.sksl",
397  "/sksl/shared/Hex.sksl",
398  "/sksl/shared/HexUnsigned.sksl",
399  "/sksl/shared/InstanceID.vert",
400  "/sksl/shared/InterfaceBlockNamed.sksl",
401  "/sksl/shared/InterfaceBlockNamedArray.sksl",
402  "/sksl/shared/Matrices.sksl",
403  "/sksl/shared/MatricesNonsquare.sksl",
404  "/sksl/shared/MatrixConstructorsES2.sksl",
405  "/sksl/shared/MatrixConstructorsES3.sksl",
406  "/sksl/shared/MatrixEquality.sksl",
407  "/sksl/shared/MatrixScalarSplat.sksl",
408  "/sksl/shared/MatrixToVectorCast.sksl",
409  "/sksl/shared/MultipleAssignments.sksl",
410  "/sksl/shared/Negation.sksl",
411  "/sksl/shared/NoFragCoordsPos.vert",
412  "/sksl/shared/NoFragCoordsPosRT.vert",
413  "/sksl/shared/NormalizationVert.vert",
414  "/sksl/shared/NumberCasts.sksl",
415  "/sksl/shared/NumberConversions.sksl",
416  "/sksl/shared/Offset.sksl",
417  "/sksl/shared/OperatorsES2.sksl",
418  "/sksl/shared/OperatorsES3.sksl",
419  "/sksl/shared/Ossfuzz26167.sksl",
420  "/sksl/shared/Ossfuzz26759.sksl",
421  "/sksl/shared/Ossfuzz28794.sksl",
422  "/sksl/shared/Ossfuzz28904.sksl",
423  "/sksl/shared/Ossfuzz29085.sksl",
424  "/sksl/shared/Ossfuzz29494.sksl",
425  "/sksl/shared/Ossfuzz36770.sksl",
426  "/sksl/shared/Ossfuzz36852.sksl",
427  "/sksl/shared/Ossfuzz37466.sksl",
428  "/sksl/shared/Ossfuzz37677.sksl",
429  "/sksl/shared/Ossfuzz37900.sksl",
430  "/sksl/shared/Ossfuzz41000.sksl",
431  "/sksl/shared/OutParams.sksl",
432  "/sksl/shared/OutParamsNoInline.sksl",
433  "/sksl/shared/OutParamsTricky.sksl",
434  "/sksl/shared/Overflow.sksl",
435  "/sksl/shared/RectangleTexture.sksl",
436  "/sksl/shared/ResizeMatrix.sksl",
437  "/sksl/shared/ResizeMatrixNonsquare.sksl",
438  "/sksl/shared/ReturnBadTypeFromMain.sksl",
439  "/sksl/shared/ReturnColorFromMain.sksl",
440  "/sksl/shared/ReturnsValueOnEveryPathES2.sksl",
441  "/sksl/shared/ReturnsValueOnEveryPathES3.sksl",
442  "/sksl/shared/SampleLocations.vert",
443  "/sksl/shared/ScalarConversionConstructorsES2.sksl",
444  "/sksl/shared/ScalarConversionConstructorsES3.sksl",
445  "/sksl/shared/ScopedSymbol.sksl",
446  "/sksl/shared/StackingVectorCasts.sksl",
447  "/sksl/shared/StaticIf.sksl",
448  "/sksl/shared/StaticSwitch.sksl",
449  "/sksl/shared/StaticSwitchWithBreak.sksl",
450  "/sksl/shared/StaticSwitchWithBreakInsideBlock.sksl",
451  "/sksl/shared/StaticSwitchWithConditionalBreak.sksl",
452  "/sksl/shared/StaticSwitchWithConditionalBreakInsideBlock.sksl",
453  "/sksl/shared/StaticSwitchWithContinue.sksl",
454  "/sksl/shared/StaticSwitchWithFallthroughA.sksl",
455  "/sksl/shared/StaticSwitchWithFallthroughB.sksl",
456  "/sksl/shared/StaticSwitchWithStaticConditionalBreak.sksl",
457  "/sksl/shared/StaticSwitchWithStaticConditionalBreakInsideBlock.sksl",
458  "/sksl/shared/StructArrayFollowedByScalar.sksl",
459  "/sksl/shared/Structs.sksl",
460  "/sksl/shared/StructsInFunctions.sksl",
461  "/sksl/shared/StructMaxDepth.sksl",
462  "/sksl/shared/SwizzleBoolConstants.sksl",
463  "/sksl/shared/SwizzleByConstantIndex.sksl",
464  "/sksl/shared/SwizzleByIndex.sksl",
465  "/sksl/shared/SwizzleConstants.sksl",
466  "/sksl/shared/SwizzleLTRB.sksl",
467  "/sksl/shared/SwizzleOpt.sksl",
468  "/sksl/shared/SwizzleScalar.sksl",
469  "/sksl/shared/SwizzleScalarBool.sksl",
470  "/sksl/shared/SwizzleScalarInt.sksl",
471  "/sksl/shared/TernaryAsLValueEntirelyFoldable.sksl",
472  "/sksl/shared/TernaryAsLValueFoldableTest.sksl",
473  "/sksl/shared/TernaryExpression.sksl",
474  "/sksl/shared/Texture1D.sksl",
475  "/sksl/shared/Texture2D.sksl",
476  "/sksl/shared/TextureSharpen.sksl",
477  "/sksl/shared/UnaryPositiveNegative.sksl",
478  "/sksl/shared/UniformArray.sksl",
479  "/sksl/shared/UniformBuffers.sksl",
480  "/sksl/shared/Uniforms.sksl",
481  "/sksl/shared/UnusedVariables.sksl",
482  "/sksl/shared/VectorConstructors.sksl",
483  "/sksl/shared/VectorScalarMath.sksl",
484  "/sksl/shared/VectorToMatrixCast.sksl",
485  "/sksl/shared/VertexID.vert",
486  "/sksl/shared/WhileLoopControlFlow.sksl",
487]
488
489sksl_folding_tests = [
490  "/sksl/folding/ArrayFolding.sksl",
491  "/sksl/folding/ArraySizeFolding.sksl",
492  "/sksl/folding/AssignmentOps.sksl",
493  "/sksl/folding/BoolFolding.sksl",
494  "/sksl/folding/CastFolding.sksl",
495  "/sksl/folding/FloatFolding.sksl",
496  "/sksl/folding/IntFoldingES2.sksl",
497  "/sksl/folding/IntFoldingES3.sksl",
498  "/sksl/folding/MatrixFoldingES2.sksl",
499  "/sksl/folding/MatrixFoldingES3.sksl",
500  "/sksl/folding/SelfAssignment.sksl",
501  "/sksl/folding/ShortCircuitBoolFolding.sksl",
502  "/sksl/folding/SwizzleFolding.sksl",
503  "/sksl/folding/VectorScalarFolding.sksl",
504  "/sksl/folding/VectorVectorFolding.sksl",
505]
506
507sksl_inliner_tests = [
508  "/sksl/inliner/DoWhileBodyMustBeInlinedIntoAScope.sksl",
509  "/sksl/inliner/DoWhileTestCannotBeInlined.sksl",
510  "/sksl/inliner/ForBodyMustBeInlinedIntoAScope.sksl",
511  "/sksl/inliner/ForInitializerExpressionsCanBeInlined.sksl",
512  "/sksl/inliner/ForWithReturnInsideCannotBeInlined.sksl",
513  "/sksl/inliner/ForWithoutReturnInsideCanBeInlined.sksl",
514  "/sksl/inliner/IfBodyMustBeInlinedIntoAScope.sksl",
515  "/sksl/inliner/IfElseBodyMustBeInlinedIntoAScope.sksl",
516  "/sksl/inliner/IfElseChainWithReturnsCanBeInlined.sksl",
517  "/sksl/inliner/IfTestCanBeInlined.sksl",
518  "/sksl/inliner/IfWithReturnsCanBeInlined.sksl",
519  "/sksl/inliner/InlineKeywordOverridesThreshold.sksl",
520  "/sksl/inliner/InlineThreshold.sksl",
521  "/sksl/inliner/InlinerElidesTempVarForReturnsInsideBlock.sksl",
522  "/sksl/inliner/InlinerUsesTempVarForMultipleReturns.sksl",
523  "/sksl/inliner/InlinerUsesTempVarForReturnsInsideBlockWithVar.sksl",
524  "/sksl/inliner/InlineWithInoutArgument.sksl",
525  "/sksl/inliner/InlineWithModifiedArgument.sksl",
526  "/sksl/inliner/InlineWithNestedBigCalls.sksl",
527  "/sksl/inliner/InlineWithNestedCalls.sksl",
528  "/sksl/inliner/InlineWithUnmodifiedArgument.sksl",
529  "/sksl/inliner/InlineWithUnnecessaryBlocks.sksl",
530  "/sksl/inliner/InlinerAvoidsVariableNameOverlap.sksl",
531  "/sksl/inliner/InlinerHonorsGLSLOutParamSemantics.sksl",
532  "/sksl/inliner/InlinerManglesNames.sksl",
533  "/sksl/inliner/NoInline.sksl",
534  "/sksl/inliner/Ossfuzz37994.sksl",
535  "/sksl/inliner/ShortCircuitEvaluationsCannotInlineRightHandSide.sksl",
536  "/sksl/inliner/StaticSwitch.sksl",
537  "/sksl/inliner/StructsCanBeInlinedSafely.sksl",
538  "/sksl/inliner/SwitchWithCastCanBeInlined.sksl",
539  "/sksl/inliner/SwitchWithoutReturnInsideCanBeInlined.sksl",
540  "/sksl/inliner/SwizzleCanBeInlinedDirectly.sksl",
541  "/sksl/inliner/TernaryResultsCannotBeInlined.sksl",
542  "/sksl/inliner/TernaryTestCanBeInlined.sksl",
543  "/sksl/inliner/TrivialArgumentsInlineDirectly.sksl",
544  "/sksl/inliner/WhileBodyMustBeInlinedIntoAScope.sksl",
545  "/sksl/inliner/WhileTestCannotBeInlined.sksl",
546]
547
548sksl_blend_tests = [
549  "/sksl/blend/BlendClear.sksl",
550  "/sksl/blend/BlendColor.sksl",
551  "/sksl/blend/BlendColorBurn.sksl",
552  "/sksl/blend/BlendColorDodge.sksl",
553  "/sksl/blend/BlendDarken.sksl",
554  "/sksl/blend/BlendDifference.sksl",
555  "/sksl/blend/BlendDst.sksl",
556  "/sksl/blend/BlendDstAtop.sksl",
557  "/sksl/blend/BlendDstIn.sksl",
558  "/sksl/blend/BlendDstOut.sksl",
559  "/sksl/blend/BlendDstOver.sksl",
560  "/sksl/blend/BlendExclusion.sksl",
561  "/sksl/blend/BlendHardLight.sksl",
562  "/sksl/blend/BlendHue.sksl",
563  "/sksl/blend/BlendLighten.sksl",
564  "/sksl/blend/BlendLuminosity.sksl",
565  "/sksl/blend/BlendModulate.sksl",
566  "/sksl/blend/BlendMultiply.sksl",
567  "/sksl/blend/BlendOverlay.sksl",
568  "/sksl/blend/BlendPlus.sksl",
569  "/sksl/blend/BlendSaturation.sksl",
570  "/sksl/blend/BlendScreen.sksl",
571  "/sksl/blend/BlendSoftLight.sksl",
572  "/sksl/blend/BlendSrc.sksl",
573  "/sksl/blend/BlendSrcAtop.sksl",
574  "/sksl/blend/BlendSrcIn.sksl",
575  "/sksl/blend/BlendSrcOut.sksl",
576  "/sksl/blend/BlendSrcOver.sksl",
577  "/sksl/blend/BlendXor.sksl",
578]
579
580sksl_settings_tests = [
581  "/sksl/glsl/TypePrecision.sksl",
582  "/sksl/inliner/ExponentialGrowth.sksl",
583  "/sksl/inliner/InlinerCanBeDisabled.sksl",
584  "/sksl/shared/Derivatives.sksl",
585  "/sksl/shared/Switch.sksl",
586  "/sksl/shared/SwitchDefaultOnly.sksl",
587  "/sksl/shared/SwitchWithFallthrough.sksl",
588  "/sksl/shared/SwitchWithLoops.sksl",
589  "/sksl/workarounds/AbsInt.sksl",
590  "/sksl/workarounds/BlendGuardedDivide.sksl",
591  "/sksl/workarounds/FractNegative.sksl",
592  "/sksl/workarounds/FragCoords.sksl",
593  "/sksl/workarounds/LoopCondition.sksl",
594  "/sksl/workarounds/MinAndAbsTogether.sksl",
595  "/sksl/workarounds/NegatedAtan.sksl",
596  "/sksl/workarounds/NegatedLdexp.sksl",
597  "/sksl/workarounds/PowWithConstantExponent.sksl",
598  "/sksl/workarounds/RewriteDoWhileLoops.sksl",
599  "/sksl/workarounds/RewriteMatrixComparisons.sksl",
600  "/sksl/workarounds/RewriteMatrixVectorMultiply.sksl",
601  "/sksl/workarounds/TernaryShortCircuit.sksl",
602]
603
604sksl_rte_tests = [
605  "/sksl/runtime/AllowNarrowingConversions.rts",
606  "/sksl/runtime/ArrayIndexing.rts",
607  "/sksl/runtime/ArrayNarrowingConversions.rts",
608  "/sksl/runtime/Blend.rtb",
609  "/sksl/runtime/ConstPreservation.rts",
610  "/sksl/runtime/ConversionConstructors.rts",
611  "/sksl/runtime/GLSLTypeNames.rts",
612  "/sksl/runtime/GlobalVariables.rts",
613  "/sksl/runtime/LargeProgram_BlocklessLoops.rts",
614  "/sksl/runtime/LargeProgram_FlatLoop.rts",
615  "/sksl/runtime/LargeProgram_Functions.rts",
616  "/sksl/runtime/LargeProgram_NestedLoops.rts",
617  "/sksl/runtime/LargeProgram_SplitLoops.rts",
618  "/sksl/runtime/LargeProgram_StackDepth.rts",
619  "/sksl/runtime/LargeProgram_ZeroIterFor.rts",
620  "/sksl/runtime/LoopInt.rts",
621  "/sksl/runtime/LoopFloat.rts",
622  "/sksl/runtime/PrecisionQualifiers.rts",
623  "/sksl/runtime/QualifierOrder.rts",
624  "/sksl/runtime/SampleWithExplicitCoord.rts",
625  "/sksl/runtime/Switch.rts",
626  "/sksl/runtime/SwitchDefaultOnly.rts",
627  "/sksl/runtime/SwitchWithFallthrough.rts",
628  "/sksl/runtime/SwitchWithLoops.rts",
629  "/sksl/runtime/VectorIndexing.rts",
630]
631
632sksl_rte_error_tests = [
633  "/sksl/runtime_errors/DerivativesES2.rts",
634  "/sksl/runtime_errors/ES3Types.rts",
635  "/sksl/runtime_errors/FirstClassArrays.rts",
636  "/sksl/runtime_errors/IllegalArrayOps.rts",
637  "/sksl/runtime_errors/IllegalIndexing.rts",
638  "/sksl/runtime_errors/IllegalOperators.rts",
639  "/sksl/runtime_errors/IllegalPrecisionQualifiers.rts",
640  "/sksl/runtime_errors/IllegalRecursionComplex.rts",
641  "/sksl/runtime_errors/IllegalRecursionMutual.rts",
642  "/sksl/runtime_errors/IllegalRecursionSimple.rts",
643  "/sksl/runtime_errors/IllegalShaderSampling.rts",
644  "/sksl/runtime_errors/IllegalShaderUse.rts",
645  "/sksl/runtime_errors/IllegalStatements.rts",
646  "/sksl/runtime_errors/InvalidBlendMain.rtb",
647  "/sksl/runtime_errors/InvalidColorFilterFeatures.rtcf",
648  "/sksl/runtime_errors/InvalidColorFilterMain.rtcf",
649  "/sksl/runtime_errors/InvalidShaderMain.rts",
650  "/sksl/runtime_errors/LoopConditionErrors.rts",
651  "/sksl/runtime_errors/LoopExpressionErrors.rts",
652  "/sksl/runtime_errors/LoopInitializerErrors.rts",
653  "/sksl/runtime_errors/LoopStructureErrors.rts",
654  "/sksl/runtime_errors/Ossfuzz36655.rts",
655  "/sksl/runtime_errors/Ossfuzz38131.rts",
656  "/sksl/runtime_errors/ProgramTooLarge_BlocklessLoops.rts",
657  "/sksl/runtime_errors/ProgramTooLarge_Extreme.rts",
658  "/sksl/runtime_errors/ProgramTooLarge_FlatLoop.rts",
659  "/sksl/runtime_errors/ProgramTooLarge_Functions.rts",
660  "/sksl/runtime_errors/ProgramTooLarge_NestedLoops.rts",
661  "/sksl/runtime_errors/ProgramTooLarge_SplitLoops.rts",
662  "/sksl/runtime_errors/ProgramTooLarge_StackDepth.rts",
663  "/sksl/runtime_errors/ReservedNameISampler2D.rts",
664  "/sksl/runtime_errors/ReservedNameSampler.rts",
665  "/sksl/runtime_errors/ReservedNameSampler1D.rts",
666  "/sksl/runtime_errors/ReservedNameSampler2D.rts",
667  "/sksl/runtime_errors/ReservedNameSampler2DRect.rts",
668  "/sksl/runtime_errors/ReservedNameSampler3D.rts",
669  "/sksl/runtime_errors/ReservedNameSamplerExternalOES.rts",
670  "/sksl/runtime_errors/ReservedNameSubpassInput.rts",
671  "/sksl/runtime_errors/ReservedNameSubpassInputMS.rts",
672  "/sksl/runtime_errors/ReservedNameTexture2D.rts",
673  "/sksl/runtime_errors/UnsupportedTypeFragmentProcessor.rts",
674  "/sksl/runtime_errors/UnsupportedTypeSampler.rts",
675  "/sksl/runtime_errors/UnsupportedTypeTexture.rts",
676]
677
678# Tests in sksl_glsl_tests_sources will be compiled with --settings on, and are expected to generate
679# a .glsl output file.
680sksl_glsl_tests_sources =
681    sksl_error_tests + sksl_glsl_tests + sksl_inliner_tests +
682    sksl_folding_tests + sksl_shared_tests
683
684# Tests in sksl_glsl_settings_tests_sources will be compiled twice, once with --settings and once
685# using --nosettings. In the latter mode, StandaloneSettings is appended to the output filename.
686sksl_glsl_settings_tests_sources = sksl_blend_tests + sksl_settings_tests
687
688# Tests in sksl_metal_tests_sources will be compiled with --settings on, and are expected to
689# generate a .metal output file.
690sksl_metal_tests_sources =
691    sksl_metal_tests + sksl_blend_tests + sksl_shared_tests
692
693# Tests in sksl_spirv_tests_sources will be compiled with --settings on, and are expected to
694# generate a .asm.(frag|vert|geom) output file.
695sksl_spirv_tests_sources =
696    sksl_blend_tests + sksl_shared_tests + sksl_spirv_tests
697
698## Tests in sksl_skvm_tests_sources will be compiled with --settings on, and are expected to
699## generate a .skvm output file.
700sksl_skvm_tests_sources = sksl_rte_tests + sksl_rte_error_tests
701
702## Tests in sksl_stage_tests_sources will be compiled with --settings on, and are expected to
703## generate a .stage output file.
704sksl_stage_tests_sources = sksl_rte_tests
705