skia2/tests/sksl/errors
John Stiles d2f51b1806 Fix fuzzer-discovered optimizer crash.
The CFG/definition map are no longer valid after replacing an expression
entirely. Swizzle-of-swizzle optimization was another case where the
optimizer would replace an expression wholesale, but failed to set the
needs-rescan flag.

Change-Id: Ida0363d738cd1d3ac2a48c824aa04065a7ca16b7
Bug: oss-fuzz:29085
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/351776
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-01-08 13:03:02 +00:00
..
golden Fix fuzzer-discovered optimizer crash. 2021-01-08 13:03:02 +00:00
ArgumentCountMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ArgumentMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ArgumentModifiers.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ArrayIndexOutOfRange.sksl Check array bounds when a constant array index is used. 2020-12-07 18:17:30 +00:00
ArrayReturnTypes.sksl Remove multi-dimensional array support from the parser. 2020-12-03 20:24:38 +00:00
ArrayTooManyDimensions.sksl Disallow multi-dimensional arrays in SkSL. 2020-12-03 16:28:19 +00:00
ArrayUnspecifiedDimensions.sksl SkSL: Remove "null" as a type and literal value. 2020-12-23 16:21:57 +00:00
AssignmentTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BadCaps.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BadFieldAccess.sksl Add unit tests for assignment and invalid field access. 2020-09-25 21:42:22 +00:00
BadIndex.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BadModifiers.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BinaryInvalidType.sksl fixed SkSL crash when performing binary operations on invalid types 2020-12-11 17:29:10 +00:00
BinaryTypeCoercion.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BinaryTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
BitShiftFloat.sksl SkSL: Only allow bitwise ops on integral types 2020-09-17 18:12:34 +00:00
BitShiftFloatMatrix.sksl SkSL: Only allow bitwise ops on integral types 2020-09-17 18:12:34 +00:00
BitShiftFloatVector.sksl SkSL: Only allow bitwise ops on integral types 2020-09-17 18:12:34 +00:00
BooleanArithmetic.sksl Add SkSL error reporting when an undefined function is called. 2021-01-05 14:38:41 +00:00
BreakOutsideLoop.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
CallNonFunction.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
CanExitWithoutReturningValue.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ConstructorArgumentCount.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ConstructorTypeMismatch.sksl Add support for number(boolean) and boolean(number) casts in SkSL. 2021-01-05 21:19:45 +00:00
ContinueOutsideLoop.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
Discard.rte Add .rte -> .skvm unit test framework 2020-12-22 17:59:42 +00:00
DivideByZero.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
DoTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
DuplicateFunction.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
DuplicateOutput.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
DuplicateSymbol.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
EnumValueMustBeConstInt.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ErrorsInDeadCode.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
FieldAfterRuntimeArray.sksl Disallow unsized array dimensions on size fields past the frontmost. 2020-11-17 16:44:13 +00:00
FloatRemainder.sksl SkSL: Disallow '%' and '%=' on non-integral types 2020-12-10 22:19:49 +00:00
ForTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
GenericArgumentMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
GrBadIn.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrMainParameterWrongType.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrMainTooManyParameters.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNoFragmentProcessorConstruction.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNoFragmentProcessorExpressions.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNoFragmentProcessorLocals.fp Remove sk_OutColor built-in variable. 2020-12-15 17:03:12 +00:00
GrNoFragmentProcessorParams.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNoFragmentProcessorReturn.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrRecursion.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
IfTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
IllegalOperators.rte Runtime effects: Disallow bitwise ops and integer remainder 2021-01-06 14:05:59 +00:00
InterfaceBlockScope.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
InterfaceBlockStorageModifiers.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
InterfaceBlockWithNoMembers.sksl Migrate CrbugOssfuzz21688 to a golden-output test. 2020-11-04 22:34:13 +00:00
InvalidAssignment.sksl Disallow assignment to unfoldable ternaries in SkSL. 2020-09-25 21:26:40 +00:00
InvalidOutParams.sksl Add new unit tests for SkSL. 2020-09-23 20:30:47 +00:00
InvalidToken.sksl Add unit test for invalid tokens in input stream. 2021-01-07 20:50:01 +00:00
InvalidUnary.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
InVarWithInitializerExpression.sksl Add unit test for fuzzer-detected error with in vars. 2020-11-09 18:14:56 +00:00
ModifiersInStruct.sksl Reject struct vardecls with modifiers. 2020-10-09 22:34:23 +00:00
OpaqueTypeAssignment.sksl Enforce additional restrictions on opaque types. 2020-12-22 22:24:24 +00:00
OpaqueTypeConstruction.sksl Enforce additional restrictions on opaque types. 2020-12-22 22:24:24 +00:00
OpaqueTypeInArray.sksl Disallow global variables containing arrays of opaque types. 2020-12-01 20:04:14 +00:00
OpaqueTypeInInterfaceBlock.sksl Disallow opaque types in structs and interface blocks. 2020-11-17 15:25:43 +00:00
OpaqueTypeInStruct.sksl Disallow opaque types in structs and interface blocks. 2020-11-17 15:25:43 +00:00
OpenArray.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
Ossfuzz26700.sksl Fix unknown-identifier issue discovered by fuzzer. 2020-10-30 19:11:31 +00:00
Ossfuzz26759.sksl Add unit test for error discovered by fuzzer. 2020-10-30 18:18:31 +00:00
Ossfuzz27650.sksl Fix fuzzer crash when casting between int and float. 2020-11-20 14:07:03 +00:00
Ossfuzz27663.sksl Fix double-negation of constant-value construcors. 2020-11-23 17:02:21 +00:00
Ossfuzz29085.sksl Fix fuzzer-discovered optimizer crash. 2021-01-08 13:03:02 +00:00
OverflowFloatLiteral.sksl Detect and report numeric overflows in the SkSL parser. 2020-12-28 16:39:19 +00:00
OverflowIntLiteral.sksl Add unit tests for overflowing int and uint literal limits. 2020-11-11 16:11:15 +00:00
OverflowParamArraySize.sksl Detect and report numeric overflows in the SkSL parser. 2020-12-28 16:39:19 +00:00
OverflowUintLiteral.sksl Add unit tests for overflowing int and uint literal limits. 2020-11-11 16:11:15 +00:00
PrivateTypes.sksl SkSL: Remove all $gsamplerFoo types 2020-12-23 16:57:07 +00:00
RedeclareBasicType.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareEnum.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareSamplerType.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareStruct.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareStructTypeWithName.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareUserType.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
RedeclareVariable.sksl Disallow identifier names that overlap existing types. 2020-12-04 16:52:01 +00:00
ReturnDifferentType.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ReturnFromVoid.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ReturnMissingValue.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
ReturnTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SelfReferentialInitializerExpression.sksl Add unit test for self-referential initializer expressions. 2020-10-23 14:36:05 +00:00
SpuriousFloat.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
StaticIfTest.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
StaticSwitchConditionalBreak.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
StaticSwitchTest.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
StructTooDeeplyNested.sksl Limit struct nesting depth to a maximum of eight levels. 2020-11-10 16:58:37 +00:00
SwitchDuplicateCase.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwitchTypes.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwizzleConstantOutput.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwizzleMatrix.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwizzleOnlyLiterals.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwizzleOutOfBounds.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
SwizzleTooManyComponents.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
TernaryMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UndeclaredFunction.sksl Add test cases to function-prototype golden outputs. 2020-11-02 17:17:23 +00:00
UndefinedFunction.sksl Add test cases to function-prototype golden outputs. 2020-11-02 17:17:23 +00:00
UndefinedSymbol.sksl
Unreachable.sksl Revert "Fix incorrect 'unreachable code' error in SkSL" 2020-12-16 18:21:17 +00:00
UnsupportedGLSLIdentifiers.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UnsupportedTypeSampler.rte Add .rte -> .skvm unit test framework 2020-12-22 17:59:42 +00:00
UnsupportedTypeTexture.rte Add .rte -> .skvm unit test framework 2020-12-22 17:59:42 +00:00
UseWithoutInitializeArrayIndex.sksl Disallow multi-dimensional arrays in SkSL. 2020-12-03 16:28:19 +00:00
UseWithoutInitializeBinaryExpr.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UseWithoutInitializeDeadIf.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UseWithoutInitializeDeadSwitch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UseWithoutInitializeReturnValue.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UseWithoutInitializeVarDecl.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
UsingInvalidValue.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00
WhileTypeMismatch.sksl Migrate SkSL error tests to golden outputs. 2020-09-18 13:46:17 +00:00