| # Copyright 2020 Google LLC |
| # |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # Things are easiest for everyone if these source paths are absolute. |
| _tests = get_path_info("../tests", "abspath") |
| |
| sksl_fp_error_tests = [ |
| "$_tests/sksl/errors/GrBadIn.fp", |
| "$_tests/sksl/errors/GrBothExplicitReturnAndSkOutColor.fp", |
| "$_tests/sksl/errors/GrCannotReturnWithSkOutColor.fp", |
| "$_tests/sksl/errors/GrMainParameterWrongType.fp", |
| "$_tests/sksl/errors/GrMainTooManyParameters.fp", |
| "$_tests/sksl/errors/GrNoFragmentProcessorConstruction.fp", |
| "$_tests/sksl/errors/GrNoFragmentProcessorExpressions.fp", |
| "$_tests/sksl/errors/GrNoFragmentProcessorLocals.fp", |
| "$_tests/sksl/errors/GrNoFragmentProcessorParams.fp", |
| "$_tests/sksl/errors/GrNoFragmentProcessorReturn.fp", |
| ] |
| |
| sksl_fp_tests = [ |
| "$_tests/sksl/fp/GrChildProcessorAndGlobal.fp", |
| "$_tests/sksl/fp/GrChildProcessorFieldAccess.fp", |
| "$_tests/sksl/fp/GrChildProcessorInlineFieldAccess.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleCoords.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixAndCoords.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixConstant.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixConstantAndCoords.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixMultipleUniforms.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleInUniform.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleUniform.fp", |
| "$_tests/sksl/fp/GrChildProcessorSampleMatrixSingleUniformExpr.fp", |
| "$_tests/sksl/fp/GrChildProcessorWithInputExpression.fp", |
| "$_tests/sksl/fp/GrChildProcessors.fp", |
| "$_tests/sksl/fp/GrChildProcessorsWithInput.fp", |
| "$_tests/sksl/fp/GrConditionalInUniform.fp", |
| "$_tests/sksl/fp/GrFunction.fp", |
| "$_tests/sksl/fp/GrGrSLTypesAreSupported.fp", |
| "$_tests/sksl/fp/GrHelloWorld.fp", |
| "$_tests/sksl/fp/GrInUniform.fp", |
| "$_tests/sksl/fp/GrInUniformCType.fp", |
| "$_tests/sksl/fp/GrInlinedFunction.fp", |
| "$_tests/sksl/fp/GrKeyIn.fp", |
| "$_tests/sksl/fp/GrLayoutWhen.fp", |
| "$_tests/sksl/fp/GrMainCoords.fp", |
| "$_tests/sksl/fp/GrNestedChildProcessors.fp", |
| "$_tests/sksl/fp/GrNonInlinedInUniform.fp", |
| "$_tests/sksl/fp/GrNullableChildProcessor.fp", |
| "$_tests/sksl/fp/GrSectionClass.fp", |
| "$_tests/sksl/fp/GrSectionConstructor.fp", |
| "$_tests/sksl/fp/GrSectionConstructorParams.fp", |
| "$_tests/sksl/fp/GrSectionCpp.fp", |
| "$_tests/sksl/fp/GrSectionDumpInfo.fp", |
| "$_tests/sksl/fp/GrSectionEmitCode.fp", |
| "$_tests/sksl/fp/GrSectionFields.fp", |
| "$_tests/sksl/fp/GrSectionHeader.fp", |
| "$_tests/sksl/fp/GrSectionInitializers.fp", |
| "$_tests/sksl/fp/GrSectionMake.fp", |
| "$_tests/sksl/fp/GrSectionSetData.fp", |
| "$_tests/sksl/fp/GrSectionTest.fp", |
| "$_tests/sksl/fp/GrTrackedInUniform.fp", |
| "$_tests/sksl/fp/GrUniform.fp", |
| "$_tests/sksl/fp/GrUniformArrays.fp", |
| "$_tests/sksl/fp/GrUseExplicitReturn.fp", |
| ] |
| |
| sksl_error_tests = [ |
| "$_tests/sksl/errors/ArgumentCountMismatch.sksl", |
| "$_tests/sksl/errors/ArgumentMismatch.sksl", |
| "$_tests/sksl/errors/ArgumentModifiers.sksl", |
| "$_tests/sksl/errors/AssignmentTypeMismatch.sksl", |
| "$_tests/sksl/errors/BadCaps.sksl", |
| "$_tests/sksl/errors/BadFieldAccess.sksl", |
| "$_tests/sksl/errors/BadIndex.sksl", |
| "$_tests/sksl/errors/BadModifiers.sksl", |
| "$_tests/sksl/errors/BinaryTypeCoercion.sksl", |
| "$_tests/sksl/errors/BinaryTypeMismatch.sksl", |
| "$_tests/sksl/errors/BitShiftFloat.sksl", |
| "$_tests/sksl/errors/BitShiftFloatMatrix.sksl", |
| "$_tests/sksl/errors/BitShiftFloatVector.sksl", |
| "$_tests/sksl/errors/BreakOutsideLoop.sksl", |
| "$_tests/sksl/errors/CallNonFunction.sksl", |
| "$_tests/sksl/errors/CanExitWithoutReturningValue.sksl", |
| "$_tests/sksl/errors/ConstructorArgumentCount.sksl", |
| "$_tests/sksl/errors/ConstructorTypeMismatch.sksl", |
| "$_tests/sksl/errors/ContinueOutsideLoop.sksl", |
| "$_tests/sksl/errors/DivideByZero.sksl", |
| "$_tests/sksl/errors/DoTypeMismatch.sksl", |
| "$_tests/sksl/errors/DuplicateFunction.sksl", |
| "$_tests/sksl/errors/DuplicateOutput.sksl", |
| "$_tests/sksl/errors/DuplicateSymbol.sksl", |
| "$_tests/sksl/errors/EnumValueMustBeConstInt.sksl", |
| "$_tests/sksl/errors/ErrorsInDeadCode.sksl", |
| "$_tests/sksl/errors/FieldAfterRuntimeArray.sksl", |
| "$_tests/sksl/errors/ForTypeMismatch.sksl", |
| "$_tests/sksl/errors/GenericArgumentMismatch.sksl", |
| "$_tests/sksl/errors/IfTypeMismatch.sksl", |
| "$_tests/sksl/errors/InterfaceBlockScope.sksl", |
| "$_tests/sksl/errors/InterfaceBlockStorageModifiers.sksl", |
| "$_tests/sksl/errors/InvalidAssignment.sksl", |
| "$_tests/sksl/errors/InvalidOutParams.sksl", |
| "$_tests/sksl/errors/InvalidUnary.sksl", |
| "$_tests/sksl/errors/ModifiersInStruct.sksl", |
| "$_tests/sksl/errors/OpenArray.sksl", |
| "$_tests/sksl/errors/ReturnDifferentType.sksl", |
| "$_tests/sksl/errors/ReturnFromVoid.sksl", |
| "$_tests/sksl/errors/ReturnMissingValue.sksl", |
| "$_tests/sksl/errors/ReturnTypeMismatch.sksl", |
| "$_tests/sksl/errors/SpuriousFloat.sksl", |
| "$_tests/sksl/errors/StaticIfTest.sksl", |
| "$_tests/sksl/errors/StaticSwitchConditionalBreak.sksl", |
| "$_tests/sksl/errors/StaticSwitchTest.sksl", |
| "$_tests/sksl/errors/SwitchDuplicateCase.sksl", |
| "$_tests/sksl/errors/SwitchTypes.sksl", |
| "$_tests/sksl/errors/SwizzleConstantOutput.sksl", |
| "$_tests/sksl/errors/SwizzleMatrix.sksl", |
| "$_tests/sksl/errors/SwizzleOnlyLiterals.sksl", |
| "$_tests/sksl/errors/SwizzleOutOfBounds.sksl", |
| "$_tests/sksl/errors/SwizzleTooManyComponents.sksl", |
| "$_tests/sksl/errors/TernaryMismatch.sksl", |
| "$_tests/sksl/errors/UndefinedFunction.sksl", |
| "$_tests/sksl/errors/UndefinedSymbol.sksl", |
| "$_tests/sksl/errors/Unreachable.sksl", |
| "$_tests/sksl/errors/UnsupportedGLSLIdentifiers.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeArrayIndex.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeBinaryExpr.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeDeadIf.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeDeadSwitch.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeReturnValue.sksl", |
| "$_tests/sksl/errors/UseWithoutInitializeVarDecl.sksl", |
| "$_tests/sksl/errors/UsingInvalidValue.sksl", |
| "$_tests/sksl/errors/WhileTypeMismatch.sksl", |
| ] |
| |
| sksl_glsl_tests = [ |
| "$_tests/sksl/glsl/ForceHighPrecision.sksl", |
| "$_tests/sksl/glsl/IncompleteShortIntPrecision.sksl", |
| "$_tests/sksl/glsl/LayoutQualifiers.sksl", |
| "$_tests/sksl/glsl/ShortIntPrecision.sksl", |
| "$_tests/sksl/glsl/TextureSharpenVersion110.sksl", |
| "$_tests/sksl/glsl/TextureVersion110.sksl", |
| "$_tests/sksl/glsl/UsesPrecisionModifiers.sksl", |
| "$_tests/sksl/glsl/Version110.sksl", |
| "$_tests/sksl/glsl/Version450Core.sksl", |
| ] |
| |
| sksl_shared_tests = [ |
| "$_tests/sksl/shared/ArrayConstructors.sksl", |
| "$_tests/sksl/shared/ArrayIndexTypes.sksl", |
| "$_tests/sksl/shared/ArrayTypes.sksl", |
| "$_tests/sksl/shared/Assignment.sksl", |
| "$_tests/sksl/shared/BoolFolding.sksl", |
| "$_tests/sksl/shared/Caps.sksl", |
| "$_tests/sksl/shared/CastsRoundTowardZero.sksl", |
| "$_tests/sksl/shared/Clockwise.sksl", |
| "$_tests/sksl/shared/ComplexDelete.sksl", |
| "$_tests/sksl/shared/ConstArray.sksl", |
| "$_tests/sksl/shared/ConstVariableComparison.sksl", |
| "$_tests/sksl/shared/ConstantIf.sksl", |
| "$_tests/sksl/shared/Control.sksl", |
| "$_tests/sksl/shared/DeadDoWhileLoop.sksl", |
| "$_tests/sksl/shared/DeadLoopVariable.sksl", |
| "$_tests/sksl/shared/DependentInitializers.sksl", |
| "$_tests/sksl/shared/DerivativesUnused.sksl", |
| "$_tests/sksl/shared/Discard.sksl", |
| "$_tests/sksl/shared/FloatFolding.sksl", |
| "$_tests/sksl/shared/FrExp.sksl", |
| "$_tests/sksl/shared/FragCoordsFlipY.sksl", |
| "$_tests/sksl/shared/FragCoordsNew.sksl", |
| "$_tests/sksl/shared/FragCoordsOld.sksl", |
| "$_tests/sksl/shared/FunctionArgumentMatch.sksl", |
| "$_tests/sksl/shared/FunctionPrototype.sksl", |
| "$_tests/sksl/shared/Functions.sksl", |
| "$_tests/sksl/shared/Geometry.geom", |
| "$_tests/sksl/shared/GeometryExtension.geom", |
| "$_tests/sksl/shared/GeometryGSInvocations.geom", |
| "$_tests/sksl/shared/GeometryNoGSInvocations.geom", |
| "$_tests/sksl/shared/GeometryNoGSInvocationsReorder.geom", |
| "$_tests/sksl/shared/Height.sksl", |
| "$_tests/sksl/shared/HelloWorld.sksl", |
| "$_tests/sksl/shared/Hex.sksl", |
| "$_tests/sksl/shared/InstanceID.vert", |
| "$_tests/sksl/shared/IntFolding.sksl", |
| "$_tests/sksl/shared/InterfaceBlockAnonymous.sksl", |
| "$_tests/sksl/shared/InterfaceBlockArray.sksl", |
| "$_tests/sksl/shared/InterfaceBlockNamed.sksl", |
| "$_tests/sksl/shared/Matrices.sksl", |
| "$_tests/sksl/shared/MatrixFolding.sksl", |
| "$_tests/sksl/shared/MultipleAssignments.sksl", |
| "$_tests/sksl/shared/NegatedVectorLiteral.sksl", |
| "$_tests/sksl/shared/NoFragCoordsPos.vert", |
| "$_tests/sksl/shared/NoFragCoordsPosRT.vert", |
| "$_tests/sksl/shared/NormalizationGeo.geom", |
| "$_tests/sksl/shared/NormalizationVert.vert", |
| "$_tests/sksl/shared/NumberConversions.sksl", |
| "$_tests/sksl/shared/Offset.sksl", |
| "$_tests/sksl/shared/Operators.sksl", |
| "$_tests/sksl/shared/OutParams.sksl", |
| "$_tests/sksl/shared/OutParamsTricky.sksl", |
| "$_tests/sksl/shared/RectangleTexture.sksl", |
| "$_tests/sksl/shared/ResizeMatrix.sksl", |
| "$_tests/sksl/shared/SampleMask.sksl", |
| "$_tests/sksl/shared/ScopedSymbol.sksl", |
| "$_tests/sksl/shared/ShortCircuitBoolFolding.sksl", |
| "$_tests/sksl/shared/StackingVectorCasts.sksl", |
| "$_tests/sksl/shared/StaticIf.sksl", |
| "$_tests/sksl/shared/StaticSwitch.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithBreak.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithBreakInsideBlock.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithConditionalBreak.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithConditionalBreakInsideBlock.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithFallthroughA.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithFallthroughB.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithStaticConditionalBreak.sksl", |
| "$_tests/sksl/shared/StaticSwitchWithStaticConditionalBreakInsideBlock.sksl", |
| "$_tests/sksl/shared/Structs.sksl", |
| "$_tests/sksl/shared/Switch.sksl", |
| "$_tests/sksl/shared/SwitchContainingDeadCode.sksl", |
| "$_tests/sksl/shared/SwitchWithFallthrough.sksl", |
| "$_tests/sksl/shared/SwizzleBoolConstants.sksl", |
| "$_tests/sksl/shared/SwizzleConstants.sksl", |
| "$_tests/sksl/shared/SwizzleLTRB.sksl", |
| "$_tests/sksl/shared/SwizzleOpt.sksl", |
| "$_tests/sksl/shared/SwizzleScalar.sksl", |
| "$_tests/sksl/shared/TernaryAsLValueEntirelyFoldable.sksl", |
| "$_tests/sksl/shared/TernaryAsLValueFoldableTest.sksl", |
| "$_tests/sksl/shared/Texture.sksl", |
| "$_tests/sksl/shared/TextureSharpen.sksl", |
| "$_tests/sksl/shared/UnaryPositiveNegative.sksl", |
| "$_tests/sksl/shared/UnusedVariables.sksl", |
| "$_tests/sksl/shared/VectorConstructors.sksl", |
| "$_tests/sksl/shared/VectorFolding.sksl", |
| "$_tests/sksl/shared/VertexID.vert", |
| "$_tests/sksl/shared/Width.sksl", |
| ] |
| |
| sksl_inliner_tests = [ |
| "$_tests/sksl/inliner/DoWhileBodyMustBeInlinedIntoAScope.sksl", |
| "$_tests/sksl/inliner/DoWhileTestCannotBeInlined.sksl", |
| "$_tests/sksl/inliner/ForBodyMustBeInlinedIntoAScope.sksl", |
| "$_tests/sksl/inliner/ForInitializerExpressionsCanBeInlined.sksl", |
| "$_tests/sksl/inliner/ForWithReturnInsideCannotBeInlined.sksl", |
| "$_tests/sksl/inliner/ForWithoutReturnInsideCanBeInlined.sksl", |
| "$_tests/sksl/inliner/IfBodyMustBeInlinedIntoAScope.sksl", |
| "$_tests/sksl/inliner/IfElseBodyMustBeInlinedIntoAScope.sksl", |
| "$_tests/sksl/inliner/IfElseChainWithReturnsCanBeInlined.sksl", |
| "$_tests/sksl/inliner/IfTestCanBeInlined.sksl", |
| "$_tests/sksl/inliner/IfWithReturnsCanBeInlined.sksl", |
| "$_tests/sksl/inliner/InlineKeywordOverridesThreshold.sksl", |
| "$_tests/sksl/inliner/InlineThreshold.sksl", |
| "$_tests/sksl/inliner/InlineWithInoutArgument.sksl", |
| "$_tests/sksl/inliner/InlineWithModifiedArgument.sksl", |
| "$_tests/sksl/inliner/InlineWithNestedBigCalls.sksl", |
| "$_tests/sksl/inliner/InlineWithNestedCalls.sksl", |
| "$_tests/sksl/inliner/InlineWithUnmodifiedArgument.sksl", |
| "$_tests/sksl/inliner/InlineWithUnnecessaryBlocks.sksl", |
| "$_tests/sksl/inliner/InlinerAvoidsVariableNameOverlap.sksl", |
| "$_tests/sksl/inliner/InlinerManglesNames.sksl", |
| "$_tests/sksl/inliner/ShortCircuitEvaluationsCannotInlineRightHandSide.sksl", |
| "$_tests/sksl/inliner/SwitchWithCastCanBeInlined.sksl", |
| "$_tests/sksl/inliner/SwitchWithReturnInsideCannotBeInlined.sksl", |
| "$_tests/sksl/inliner/SwitchWithoutReturnInsideCanBeInlined.sksl", |
| "$_tests/sksl/inliner/SwizzleCanBeInlinedDirectly.sksl", |
| "$_tests/sksl/inliner/TernaryResultsCannotBeInlined.sksl", |
| "$_tests/sksl/inliner/TernaryTestCanBeInlined.sksl", |
| "$_tests/sksl/inliner/TrivialArgumentsInlineDirectly.sksl", |
| "$_tests/sksl/inliner/WhileBodyMustBeInlinedIntoAScope.sksl", |
| "$_tests/sksl/inliner/WhileTestCannotBeInlined.sksl", |
| ] |
| |
| sksl_blend_tests = [ |
| "$_tests/sksl/blend/BlendClear.sksl", |
| "$_tests/sksl/blend/BlendColor.sksl", |
| "$_tests/sksl/blend/BlendColorBurn.sksl", |
| "$_tests/sksl/blend/BlendColorDodge.sksl", |
| "$_tests/sksl/blend/BlendDarken.sksl", |
| "$_tests/sksl/blend/BlendDifference.sksl", |
| "$_tests/sksl/blend/BlendDst.sksl", |
| "$_tests/sksl/blend/BlendDstAtop.sksl", |
| "$_tests/sksl/blend/BlendDstIn.sksl", |
| "$_tests/sksl/blend/BlendDstOut.sksl", |
| "$_tests/sksl/blend/BlendDstOver.sksl", |
| "$_tests/sksl/blend/BlendExclusion.sksl", |
| "$_tests/sksl/blend/BlendHardLight.sksl", |
| "$_tests/sksl/blend/BlendHue.sksl", |
| "$_tests/sksl/blend/BlendLighten.sksl", |
| "$_tests/sksl/blend/BlendLuminosity.sksl", |
| "$_tests/sksl/blend/BlendModulate.sksl", |
| "$_tests/sksl/blend/BlendMultiply.sksl", |
| "$_tests/sksl/blend/BlendOverlay.sksl", |
| "$_tests/sksl/blend/BlendPlus.sksl", |
| "$_tests/sksl/blend/BlendSaturation.sksl", |
| "$_tests/sksl/blend/BlendScreen.sksl", |
| "$_tests/sksl/blend/BlendSoftLight.sksl", |
| "$_tests/sksl/blend/BlendSrc.sksl", |
| "$_tests/sksl/blend/BlendSrcAtop.sksl", |
| "$_tests/sksl/blend/BlendSrcIn.sksl", |
| "$_tests/sksl/blend/BlendSrcOut.sksl", |
| "$_tests/sksl/blend/BlendSrcOver.sksl", |
| "$_tests/sksl/blend/BlendXor.sksl", |
| ] |
| |
| sksl_settings_tests = [ |
| "$_tests/sksl/glsl/TypePrecision.sksl", |
| "$_tests/sksl/inliner/InlinerCanBeDisabled.sksl", |
| "$_tests/sksl/inliner/InlinerWrapsEarlyReturnsWithDoWhileBlock.sksl", |
| "$_tests/sksl/shared/Derivatives.sksl", |
| "$_tests/sksl/shared/DerivativesFlipY.sksl", |
| "$_tests/sksl/shared/CrossIntrinsic.sksl", |
| "$_tests/sksl/workarounds/AbsInt.sksl", |
| "$_tests/sksl/workarounds/BlendGuardedDivide.sksl", |
| "$_tests/sksl/workarounds/BlendModesAllZeroVec.sksl", |
| "$_tests/sksl/workarounds/FractNegative.sksl", |
| "$_tests/sksl/workarounds/FragCoords.sksl", |
| "$_tests/sksl/workarounds/LoopCondition.sksl", |
| "$_tests/sksl/workarounds/MinAndAbsTogether.sksl", |
| "$_tests/sksl/workarounds/NegatedAtan.sksl", |
| "$_tests/sksl/workarounds/PowWithConstantExponent.sksl", |
| "$_tests/sksl/workarounds/RewriteDoWhileLoops.sksl", |
| "$_tests/sksl/workarounds/TernaryShortCircuit.sksl", |
| ] |
| |
| # Tests in sksl_fp_tests_sources will be compiled with --settings on, and are expected to generate |
| # a .cpp and a .h output file. |
| sksl_fp_tests_sources = sksl_fp_error_tests + sksl_fp_tests |
| |
| # Tests in sksl_glsl_tests_sources will be compiled with --settings on, and are expected to generate |
| # a .glsl output file. |
| sksl_glsl_tests_sources = |
| sksl_error_tests + sksl_glsl_tests + sksl_inliner_tests + sksl_shared_tests |
| |
| # Tests in sksl_glsl_settings_tests_sources will be compiled twice, once with --settings and once |
| # using --nosettings. In the latter mode, StandaloneSettings is appended to the output filename. |
| sksl_glsl_settings_tests_sources = sksl_blend_tests + sksl_settings_tests |
| |
| # Tests in sksl_metal_tests_sources will be compiled with --settings on, and are expected to |
| # generate a .metal output file. |
| sksl_metal_tests_sources = sksl_blend_tests + sksl_shared_tests |