skia2/resources/sksl/fp
John Stiles 16cbfb41df Implement statements and expressions in DSL C++ code generator.
This CL removes the bulk of the existing C++ code generator, especially
all the complex format-string assembly code. It has been replaced with
actual DSL code generation. Simple IR can now be successfully translated
to a working DSL fragment processor.

This CL also adds a simple test harness which is patterned after the
existing SkSLTest; it renders a pixel, reads it back, and fails the test
if the result isn't solid green (RGBA=0101).

This CL doesn't implement every feature. Some obvious gaps include:
- Sampling from children
- Uniforms/inputs of any kind
- Function calls of any kind

Change-Id: Ib80c23fe1ba4453f7c3cb43b65f93c5ea0deb709
Bug: skia:11854
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396757
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-04-20 19:28:36 +00:00
..
GrChildProcessorAndGlobal.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessors.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleCoords.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixAndCoords.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixConstant.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixConstantAndCoords.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixMultipleUniforms.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixSingleInUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixSingleUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleMatrixSingleUniformExpr.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorSampleWithColor.fp Add test case for sample() with color and various forms of coords 2021-04-15 20:34:42 +00:00
GrChildProcessorsWithInput.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrChildProcessorWithInputExpression.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrConditionalInUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrFunction.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrFunctionArgTypes.fp Add bool2/bool3/bool4 to GrSLType. 2021-02-02 00:25:29 +00:00
GrFunctionReturnTypes.fp Add bool2/bool3/bool4 to GrSLType. 2021-02-02 00:25:29 +00:00
GrGrSLTypesAreSupported.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrHelloWorld.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrInlinedFunction.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrInUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrInUniformCType.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrKeyIn.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrLayoutWhen.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrMainCoords.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrModuloOp.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrNestedCall.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrNestedChildProcessors.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrNonInlinedInUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionClass.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionConstructor.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionConstructorParams.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionCpp.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionDumpInfo.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionEmitCode.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionFields.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionHeader.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionInitializers.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionMake.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionSetData.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrSectionTest.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrTrackedInUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrUniform.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrUniformArrays.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
GrUseExplicitReturn.fp Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00