skia2/resources/sksl/shared
John Stiles 94b1f0dfa1 Add overflow protection to vector-arithmetic folding.
This was causing errors in UBSAN when compiling some of our existing
SkSL tests.

Change-Id: I66f22607094df77d47ff70948a139c77feae8624
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/464118
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-10-27 16:49:02 +00:00
..
ArrayCast.sksl Add support for array-cast syntax in SkSL. 2021-08-11 12:56:40 +00:00
ArrayComparison.sksl Reland "Fix array-of-matrix/struct comparisons in Metal." 2021-08-10 21:05:20 +00:00
ArrayConstructors.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ArrayFollowedByScalar.sksl Demonstrate parsing error with structs and arrays. 2021-08-25 17:26:54 +00:00
ArrayIndexTypes.sksl
ArrayNarrowingConversions.sksl Add tests for array assignment with narrowing conversions. 2021-08-11 12:56:40 +00:00
ArrayTypes.sksl Fix array-of-struct name mangling in Pipeline stage. 2021-04-28 21:02:36 +00:00
Assignment.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Caps.sksl
CastsRoundTowardZero.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Clockwise.sksl
CommaMixedTypes.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
CommaSideEffects.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ComplexDelete.sksl
ConstantIf.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ConstArray.sksl Enable proper testing of const arrays. 2021-05-14 13:37:12 +00:00
ConstVariableComparison.sksl Cleanup TODO for constant-expression handling. 2021-05-14 13:36:33 +00:00
Control.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
DeadDoWhileLoop.sksl
DeadIfStatement.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
DeadLoopVariable.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
DeadReturn.sksl Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
DeadReturnES3.sksl Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
DeadStripFunctions.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
DependentInitializers.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Derivatives.sksl
DerivativesUnused.sksl
Discard.sksl Optimize @switch statements in SwitchStatement::Make. 2021-02-23 21:36:04 +00:00
DoWhileControlFlow.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
EmptyBlocksES2.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
EmptyBlocksES3.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
ForLoopControlFlow.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ForLoopMultipleInit.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
FragCoords.sksl Reland "Don't key progams/pipelines on origin."" 2021-07-07 14:50:10 +00:00
FunctionArgTypeMatch.sksl Allow function declarations to take (void). 2021-05-21 19:21:23 +00:00
FunctionPrototype.sksl Add support for function prototypes in Pipeline stage. 2021-09-30 20:02:19 +00:00
FunctionReturnTypeMatch.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Functions.sksl Fix ES2 conformance test 'in_vs_no_in'. 2021-10-11 22:27:37 +00:00
GaussianBlur.sksl
GeometricIntrinsics.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
HelloWorld.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Hex.sksl Add support for 0XABCD style hex literals. 2021-10-13 12:41:54 +00:00
HexUnsigned.sksl Add support for 0XABCD style hex literals. 2021-10-13 12:41:54 +00:00
InstanceID.vert
InterfaceBlockNamed.sksl
InterfaceBlockNamedArray.sksl Add default uniform binding value for Metal/SPIR-V. 2021-01-28 19:23:49 +00:00
Matrices.sksl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatricesNonsquare.sksl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatrixConstructorsES2.sksl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatrixConstructorsES3.sksl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatrixEquality.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
MatrixScalarSplat.sksl Enable proper testing of matrix-scalar ops. 2021-05-17 17:36:22 +00:00
MatrixToVectorCast.sksl Fix diagonal-matrix assertion discovered by fuzzer. 2021-08-23 17:33:42 +00:00
MultipleAssignments.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Negation.sksl Fix flaws in minus-prefix optimization. 2021-08-30 20:40:17 +00:00
NoFragCoordsPos.vert Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
NoFragCoordsPosRT.vert Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
NormalizationVert.vert
NumberCasts.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
NumberConversions.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
Offset.sksl
OperatorsES2.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
OperatorsES3.sksl Allow vector operator~ in SkSL. 2021-10-18 15:03:33 +00:00
Ossfuzz26167.sksl
Ossfuzz26759.sksl Fix up outdated tests. 2021-03-22 21:11:47 +00:00
Ossfuzz28794.sksl
Ossfuzz28904.sksl
Ossfuzz29085.sksl Fix various fuzzer-generated tests. 2021-04-12 13:44:59 +00:00
Ossfuzz29494.sksl Use unsigned values when constant-folding integer vectors 2021-02-01 21:44:28 +00:00
Ossfuzz36770.sksl Fix for fuzzer-discovered error in SPIR-V with RTFlip. 2021-08-02 17:13:50 +00:00
Ossfuzz36852.sksl Fix fuzzer-discovered error with swizzling matrices. 2021-08-05 21:59:23 +00:00
Ossfuzz37466.sksl Fix inliner bug discovered by fuzzer. 2021-08-24 14:44:43 +00:00
Ossfuzz37677.sksl Fix invalid variable ref-kind discovered by fuzzer. 2021-08-27 14:01:21 +00:00
Ossfuzz37900.sksl Fix array timeout discovered by the fuzzer. 2021-08-31 19:55:45 +00:00
OutParams.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
OutParamsNoInline.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
OutParamsTricky.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Overflow.sksl Add overflow protection to vector-arithmetic folding. 2021-10-27 16:49:02 +00:00
RectangleTexture.sksl
ResizeMatrix.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ResizeMatrixNonsquare.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ReturnBadTypeFromMain.sksl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
ReturnColorFromMain.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ReturnsValueOnEveryPathES2.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ReturnsValueOnEveryPathES3.sksl Disallow continue inside a switch. 2021-09-21 19:26:40 +00:00
SampleLocations.vert
ScalarConversionConstructorsES2.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ScalarConversionConstructorsES3.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
ScopedSymbol.sksl Match GLSL scoping rules more closely in SkSL. 2021-10-12 21:53:28 +00:00
StackingVectorCasts.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
StaticIf.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
StaticSwitch.sksl Enable additional SkSL tests which require non-ES2 features. 2021-05-17 20:24:50 +00:00
StaticSwitchWithBreak.sksl
StaticSwitchWithBreakInsideBlock.sksl
StaticSwitchWithConditionalBreak.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithConditionalBreakInsideBlock.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithContinue.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
StaticSwitchWithFallthroughA.sksl
StaticSwitchWithFallthroughB.sksl
StaticSwitchWithStaticConditionalBreak.sksl
StaticSwitchWithStaticConditionalBreakInsideBlock.sksl
StructArrayFollowedByScalar.sksl Demonstrate parsing error with structs and arrays. 2021-08-25 17:26:54 +00:00
StructMaxDepth.sksl
Structs.sksl
StructsInFunctions.sksl Reland "Implement operator== and != for Metal structs and arrays." 2021-04-29 22:55:58 +00:00
Switch.sksl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchDefaultOnly.sksl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchWithFallthrough.sksl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchWithLoops.sksl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwizzleBoolConstants.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleByConstantIndex.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleByIndex.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleConstants.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleLTRB.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleOpt.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
SwizzleScalar.sksl Add scalar-swizzling tests for int and bool types. 2021-07-12 19:54:40 +00:00
SwizzleScalarBool.sksl Add scalar-swizzling tests for int and bool types. 2021-07-12 19:54:40 +00:00
SwizzleScalarInt.sksl Add scalar-swizzling tests for int and bool types. 2021-07-12 19:54:40 +00:00
TernaryAsLValueEntirelyFoldable.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
TernaryAsLValueFoldableTest.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
TernaryExpression.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
Texture1D.sksl
Texture2D.sksl
TextureSharpen.sksl
UnaryPositiveNegative.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
UniformArray.sksl Add SkSL test for uniform arrays. 2021-10-05 13:25:00 +00:00
UniformBuffers.sksl Add default uniform binding value for Metal/SPIR-V. 2021-01-28 19:23:49 +00:00
Uniforms.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
UnusedVariables.sksl Replace break with continue inside empty (post-optimization) loop. 2021-09-21 13:06:50 +00:00
VectorConstructors.sksl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
VectorScalarMath.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
VectorToMatrixCast.sksl Fix diagonal-matrix assertion discovered by fuzzer. 2021-08-23 17:33:42 +00:00
VertexID.vert
WhileLoopControlFlow.sksl Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00