skia2/tests/sksl/fp
John Stiles d5e59b6024 Allow type-fluid GLSL-style vec2(int, bool) ctors in SkSL.
Note that GLSL accepts these sorts of constructors natively, but Metal
and SPIR-V do not. In the generated IR we actually add a cast for
subexpressions where the type does not match. These casts can be seen in
the final output for both GLSL (where they are no-ops) and Metal/SPIR-V
(where they are essential).

This change exposed some missing SPIR-V functionality (vector casts do
not support bool types). This can be fixed up in a followup CL; these
casts were previously disallowed by SkSL entirely, so there won't be any
of them in existing code.

Change-Id: I54ae922e91b38bed032537496428747a081dc774
Bug: skia:11164, skia:11171
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/353576
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-01-13 19:45:14 +00:00
..
golden Allow type-fluid GLSL-style vec2(int, bool) ctors in SkSL. 2021-01-13 19:45:14 +00:00
GrChildProcessorAndGlobal.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessorFieldAccess.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessorInlineFieldAccess.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessors.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessorSampleCoords.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessorSampleMatrixAndCoords.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixConstant.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixConstantAndCoords.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixMultipleUniforms.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixSingleInUniform.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixSingleUniform.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorSampleMatrixSingleUniformExpr.fp Make all fragmentProcessors implicitly nullable in SkSL 2020-12-23 20:22:18 +00:00
GrChildProcessorsWithInput.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrChildProcessorWithInputExpression.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrConditionalInUniform.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrFunction.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrGrSLTypesAreSupported.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrHelloWorld.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrInlinedFunction.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrInUniform.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrInUniformCType.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrKeyIn.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrLayoutWhen.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrMainCoords.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrModuloOp.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNestedCall.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNestedChildProcessors.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrNonInlinedInUniform.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionClass.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionConstructor.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionConstructorParams.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionCpp.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionDumpInfo.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionEmitCode.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionFields.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionHeader.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionInitializers.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionMake.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionSetData.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrSectionTest.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrTrackedInUniform.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrUniform.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrUniformArrays.fp Remove sk_OutColor usage from .fp unit tests. 2020-12-15 16:06:13 +00:00
GrUseExplicitReturn.fp Migrate several SkSLFP tests to golden outputs. 2020-09-17 16:46:18 +00:00