# 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", "$_tests/sksl/errors/GrRecursion.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/GrModuloOp.fp", "$_tests/sksl/fp/GrNestedCall.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/Ossfuzz26700.sksl", "$_tests/sksl/errors/Ossfuzz26759.sksl", "$_tests/sksl/errors/ReturnDifferentType.sksl", "$_tests/sksl/errors/ReturnFromVoid.sksl", "$_tests/sksl/errors/ReturnMissingValue.sksl", "$_tests/sksl/errors/ReturnTypeMismatch.sksl", "$_tests/sksl/errors/SelfReferentialInitializerExpression.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/Ossfuzz26167.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/CrossIntrinsic.sksl", "$_tests/sksl/shared/Derivatives.sksl", "$_tests/sksl/shared/DerivativesFlipY.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