skia2/tests/sksl/folding
John Stiles b6f91bc023 Optimize away equality checks for structs with known values.
We had all the moving parts in place, but had neglected to check
`simplify_constant_equality` for structs. It worked for structs that
boiled down to the same expression tree, but not for mismatched structs.
Comparison of known structs should be allowed in a constant-expression.

Change-Id: I3a52abf4530d1fe25d17eb482c1e29b5b8e03cf6
Bug: skia:13387
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/547444
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-06-06 20:59:15 +00:00
..
ArrayFolding.glsl Improve index-folding of arrays and matrices. 2021-11-11 18:59:04 +00:00
ArraySizeFolding.glsl Add test for vector constant folding. 2022-01-12 17:23:20 +00:00
AssignmentOps.glsl
BoolFolding.glsl Allow prefix-expressions in IsSameExpressionTree. 2022-04-05 20:16:35 +00:00
CastFolding.glsl
FloatFolding.glsl
IntFoldingES2.glsl
IntFoldingES3.glsl
MatrixFoldingES2.glsl Implement constant-folding for vector/matrix multiplication. 2022-03-25 21:42:47 +00:00
MatrixFoldingES3.glsl Implement constant-folding for vector/matrix multiplication. 2022-03-25 21:42:47 +00:00
Negation.glsl Simplify -1 * x into -x. 2022-04-05 20:27:15 +00:00
PreserveSideEffects.glsl [sksl][test] Add more folding tests for side-effecting expressions 2022-03-10 18:06:12 +00:00
SelfAssignment.glsl
ShortCircuitBoolFolding.glsl
StructFieldFolding.glsl Optimize away equality checks for structs with known values. 2022-06-06 20:59:15 +00:00
StructFieldNoFolding.glsl Reland "Add unit test covering struct field folding." 2022-06-06 20:38:26 +00:00
SwitchCaseFolding.glsl Simplify control flow in switch test to unbreak iOS. 2022-01-13 14:49:06 +00:00
SwizzleFolding.glsl
TernaryFolding.glsl Optimize away same-value ternaries. 2022-04-07 19:37:00 +00:00
VectorScalarFolding.glsl
VectorVectorFolding.glsl