skia2/tests/sksl/shared
John Stiles c4f2d8d17c Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract.
Previously, we only handled the simple case of extracting from an
OpConstantComposite. Now we also handle the complex case of extracting
from an OpCompositeConstruct, where vectors can be composed of other
vectors.

This is particularly challenging because OpCompositeConstruct can
contain SpvIds from almost any other instruction, so we need to be
able to decode those instructions and figure out their type. For
instance:

  %5 = OpFAdd Vec2   %1 %2
  %6 = OpFAdd Scalar %3 %4
  %7 = OpCompositeConstruct FloatVec3 %5 %6
  %8 = OpCompositeExtract %7 2

The %8 (OpCompositeExtract) could be replaced with %6 but we need to
peek at the type in *both* OpFAdd instructions to decode this. It
only works when the affected instructions are in-cache, so many
opportunities are currently not optimized because their code still
uses the original, uncached form of writeInstruction.

Change-Id: I5719ae6284f32e1d6f2c898eca282c22b94fc764
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529743
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-15 15:50:06 +00:00
..
ArrayCast.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
ArrayCast.glsl Add support for array-cast syntax in SkSL. 2021-08-11 12:56:40 +00:00
ArrayCast.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ArrayComparison.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
ArrayComparison.glsl Reland "Fix array-of-matrix/struct comparisons in Metal." 2021-08-10 21:05:20 +00:00
ArrayComparison.metal Reland "Fix Metal codegen error with structs containing compound types." 2021-11-15 13:29:06 +00:00
ArrayConstructors.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
ArrayConstructors.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
ArrayConstructors.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ArrayFollowedByScalar.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ArrayFollowedByScalar.glsl Demonstrate parsing error with structs and arrays. 2021-08-25 17:26:54 +00:00
ArrayFollowedByScalar.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ArrayIndexTypes.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
ArrayIndexTypes.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
ArrayIndexTypes.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ArrayNarrowingConversions.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
ArrayNarrowingConversions.glsl Add tests for array assignment with narrowing conversions. 2021-08-11 12:56:40 +00:00
ArrayNarrowingConversions.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ArrayTypes.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
ArrayTypes.glsl Fix array-of-struct name mangling in Pipeline stage. 2021-04-28 21:02:36 +00:00
ArrayTypes.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Assignment.asm.frag Use op cache for constant matrix construction. 2022-04-12 21:43:14 +00:00
Assignment.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
Assignment.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Caps.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Caps.glsl Report an error if sk_LastFragColor is referenced without fbFetchSupport 2021-09-15 15:41:49 +00:00
Caps.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
CastsRoundTowardZero.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
CastsRoundTowardZero.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
CastsRoundTowardZero.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Clockwise.asm.frag Increase baked-in offset of RTFlip in skslc. 2021-08-12 21:04:45 +00:00
Clockwise.glsl Reland "Don't key progams/pipelines on origin."" 2021-07-07 14:50:10 +00:00
Clockwise.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ClockwiseNoRTFlip.asm.frag Fix SPIR-V handling of fForceNoRTFlip 2022-04-15 13:08:35 +00:00
ClockwiseNoRTFlip.glsl SkSL: Add unit tests for new ForceNoRTFlip code-gen option 2022-04-15 12:59:07 +00:00
ClockwiseNoRTFlip.metal SkSL: Add unit tests for new ForceNoRTFlip code-gen option 2022-04-15 12:59:07 +00:00
CommaMixedTypes.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
CommaMixedTypes.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
CommaMixedTypes.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
CommaSideEffects.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
CommaSideEffects.glsl Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
CommaSideEffects.metal Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
ComplexDelete.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
ComplexDelete.glsl Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
ComplexDelete.metal Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
ConstantIf.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ConstantIf.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
ConstantIf.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ConstArray.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ConstArray.glsl Optimize indexing into an array with a constant-expression. 2021-11-10 19:43:58 +00:00
ConstArray.metal Optimize indexing into an array with a constant-expression. 2021-11-10 19:43:58 +00:00
ConstVariableComparison.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ConstVariableComparison.glsl Cleanup TODO for constant-expression handling. 2021-05-14 13:36:33 +00:00
ConstVariableComparison.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Control.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Control.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
Control.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadDoWhileLoop.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DeadDoWhileLoop.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
DeadDoWhileLoop.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadIfStatement.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DeadIfStatement.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
DeadIfStatement.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadLoopVariable.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DeadLoopVariable.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
DeadLoopVariable.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadReturn.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DeadReturn.glsl Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
DeadReturn.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadReturnES3.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DeadReturnES3.glsl Optimize away empty for loops. 2021-10-06 17:56:26 +00:00
DeadReturnES3.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DeadStripFunctions.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
DeadStripFunctions.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
DeadStripFunctions.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DependentInitializers.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DependentInitializers.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
DependentInitializers.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Derivatives.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
DerivativesStandaloneSettings.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
DerivativesUnused.asm.frag Revert "Revert "Refactored SPIR-V RelaxedPrecision handling"" 2021-03-18 15:01:15 +00:00
DerivativesUnused.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
DerivativesUnused.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Discard.asm.frag Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
Discard.glsl Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
Discard.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
DoubleNegation.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DoubleNegation.glsl Fixed SkSL positioning error with double negation 2022-04-05 17:10:23 +00:00
DoubleNegation.metal Fixed SkSL positioning error with double negation 2022-04-05 17:10:23 +00:00
DoWhileControlFlow.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
DoWhileControlFlow.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
DoWhileControlFlow.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
EmptyBlocksES2.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
EmptyBlocksES2.glsl Optimize away empty for loops. 2021-10-06 17:56:26 +00:00
EmptyBlocksES2.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
EmptyBlocksES3.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
EmptyBlocksES3.glsl Optimize away empty for loops. 2021-10-06 17:56:26 +00:00
EmptyBlocksES3.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ForLoopControlFlow.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ForLoopControlFlow.glsl Reland "Add SkSL for-loop control flow test to dm." 2021-01-27 15:46:39 +00:00
ForLoopControlFlow.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ForLoopMultipleInit.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ForLoopMultipleInit.glsl Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
ForLoopMultipleInit.metal Fix whitespace when commas are used in a binary-expression. 2022-01-24 16:21:43 +00:00
FragCoords.asm.frag Increase baked-in offset of RTFlip in skslc. 2021-08-12 21:04:45 +00:00
FragCoords.glsl Reland "Don't key progams/pipelines on origin."" 2021-07-07 14:50:10 +00:00
FragCoords.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
FragCoordsNoRTFlip.asm.frag Fix SPIR-V handling of fForceNoRTFlip 2022-04-15 13:08:35 +00:00
FragCoordsNoRTFlip.glsl SkSL: Add unit tests for new ForceNoRTFlip code-gen option 2022-04-15 12:59:07 +00:00
FragCoordsNoRTFlip.metal SkSL: Add unit tests for new ForceNoRTFlip code-gen option 2022-04-15 12:59:07 +00:00
FunctionAnonymousParameters.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
FunctionAnonymousParameters.glsl Add support for anonymous function parameters in SkSL. 2021-12-28 20:47:05 +00:00
FunctionAnonymousParameters.metal Add support for anonymous function parameters in SkSL. 2021-12-28 20:47:05 +00:00
FunctionArgTypeMatch.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
FunctionArgTypeMatch.glsl Allow function declarations to take (void). 2021-05-21 19:21:23 +00:00
FunctionArgTypeMatch.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
FunctionPrototype.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
FunctionPrototype.glsl Add support for function prototypes in Pipeline stage. 2021-09-30 20:02:19 +00:00
FunctionPrototype.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
FunctionReturnTypeMatch.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
FunctionReturnTypeMatch.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
FunctionReturnTypeMatch.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Functions.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
Functions.glsl Fix const function-parameter assertion discovered by fuzzer. 2021-08-23 19:28:29 +00:00
Functions.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
GaussianBlur.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
GaussianBlur.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
GaussianBlur.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
GeometricIntrinsics.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
GeometricIntrinsics.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
GeometricIntrinsics.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
HelloWorld.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
HelloWorld.glsl Migrate more SkSL tests to run in dm. 2021-02-03 23:45:15 +00:00
HelloWorld.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
HelloWorld.wgsl [sksl][wgsl] Enable WGSL codegen in skslc 2022-04-11 18:32:46 +00:00
Hex.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Hex.glsl Re-enable SkSL Hex test with constants that fit in 16 bits. 2021-02-04 17:15:08 +00:00
Hex.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
HexUnsigned.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
HexUnsigned.glsl Migrate more SkSL tests to run in dm. 2021-02-03 23:45:15 +00:00
HexUnsigned.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
InoutParameters.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
InoutParameters.glsl Fix up test SkSLInlineWithInoutArgument. 2022-01-25 21:33:45 +00:00
InoutParameters.metal Fix up test SkSLInlineWithInoutArgument. 2022-01-25 21:33:45 +00:00
InoutParamsAreDistinct.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
InoutParamsAreDistinct.glsl Improve distinct-out-param test cases. 2022-03-30 18:49:15 +00:00
InoutParamsAreDistinct.metal Improve distinct-out-param test cases. 2022-03-30 18:49:15 +00:00
InstanceID.asm.vert Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
InstanceID.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
InstanceID.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
InterfaceBlockNamed.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
InterfaceBlockNamed.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
InterfaceBlockNamed.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
InterfaceBlockNamedArray.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
InterfaceBlockNamedArray.glsl Add default uniform binding value for Metal/SPIR-V. 2021-01-28 19:23:49 +00:00
InterfaceBlockNamedArray.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Matrices.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
Matrices.glsl Implement constant-folding for matrix-op-scalar and scalar-op-matrix. 2022-01-25 17:52:31 +00:00
Matrices.metal Implement constant-folding for matrix-op-scalar and scalar-op-matrix. 2022-01-25 17:52:31 +00:00
MatricesNonsquare.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
MatricesNonsquare.glsl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatricesNonsquare.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
MatrixConstructorsES2.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
MatrixConstructorsES2.glsl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatrixConstructorsES2.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
MatrixConstructorsES3.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
MatrixConstructorsES3.glsl Revert "Disallow matrix ctors which overflow a column." 2021-10-14 01:30:08 +00:00
MatrixConstructorsES3.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
MatrixEquality.asm.frag Use op cache to deduplicate diagonal matrix construction. 2022-04-13 16:35:15 +00:00
MatrixEquality.glsl Revert "Inline functions of the form 'return (expr)' only." 2021-03-15 22:08:48 +00:00
MatrixEquality.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
MatrixScalarMath.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
MatrixScalarMath.glsl Reland "Better Matrix/Scalar testing" 2022-01-14 19:12:00 +00:00
MatrixScalarMath.metal Reland "Better Matrix/Scalar testing" 2022-01-14 19:12:00 +00:00
MatrixToVectorCast.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
MatrixToVectorCast.glsl Improve constant folding for boolean vectors. 2021-08-24 18:12:12 +00:00
MatrixToVectorCast.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
MultipleAssignments.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
MultipleAssignments.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
MultipleAssignments.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
NoFragCoordsPos.asm.vert Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
NoFragCoordsPos.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
NoFragCoordsPos.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
NoFragCoordsPosRT.asm.vert Roll SPIRV-Headers and SPIRV-Tools 2021-11-19 19:22:54 +00:00
NoFragCoordsPosRT.glsl Reland "Restrict where 'binding' and 'set' can appear" 2021-11-23 18:03:24 +00:00
NoFragCoordsPosRT.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
NormalizationVert.asm.vert Roll SPIRV-Headers and SPIRV-Tools 2021-11-19 19:22:54 +00:00
NormalizationVert.glsl Reland "Restrict where 'binding' and 'set' can appear" 2021-11-23 18:03:24 +00:00
NormalizationVert.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
NumberCasts.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
NumberCasts.glsl Migrate additional SkSL tests to run in dm. 2021-02-04 22:12:27 +00:00
NumberCasts.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
NumberConversions.asm.frag Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
NumberConversions.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
NumberConversions.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Octal.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Octal.glsl Add basic unit test for octal parsing support. 2021-11-16 13:49:41 +00:00
Octal.metal Add basic unit test for octal parsing support. 2021-11-16 13:49:41 +00:00
Offset.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
Offset.glsl Emit top-level StructDefinition for every struct 2021-01-28 19:50:09 +00:00
Offset.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
OperatorsES2.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
OperatorsES2.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
OperatorsES2.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
OperatorsES3.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
OperatorsES3.glsl Allow vector operator~ in SkSL. 2021-10-18 15:03:33 +00:00
OperatorsES3.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz26167.asm.frag Revert "Revert "Refactored SPIR-V RelaxedPrecision handling"" 2021-03-18 15:01:15 +00:00
Ossfuzz26167.glsl Prevent no-op statements in GLSL code generator. 2022-01-19 17:36:54 +00:00
Ossfuzz26167.metal Prevent no-op statements in Metal code generator. 2022-01-19 17:34:59 +00:00
Ossfuzz26759.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Ossfuzz26759.glsl Fix up outdated tests. 2021-03-22 21:11:47 +00:00
Ossfuzz26759.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz28794.asm.frag Implement compile-time optimization for sqrt(constant). 2021-05-25 04:43:10 +00:00
Ossfuzz28794.glsl Implement compile-time optimization for sqrt(constant). 2021-05-25 04:43:10 +00:00
Ossfuzz28794.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz28904.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Ossfuzz28904.glsl Prevent no-op statements in GLSL code generator. 2022-01-19 17:36:54 +00:00
Ossfuzz28904.metal Prevent no-op statements in Metal code generator. 2022-01-19 17:34:59 +00:00
Ossfuzz29085.asm.frag Fix various fuzzer-generated tests. 2021-04-12 13:44:59 +00:00
Ossfuzz29085.glsl Fix various fuzzer-generated tests. 2021-04-12 13:44:59 +00:00
Ossfuzz29085.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz29494.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Ossfuzz29494.glsl Prevent no-op statements in GLSL code generator. 2022-01-19 17:36:54 +00:00
Ossfuzz29494.metal Prevent no-op statements in Metal code generator. 2022-01-19 17:34:59 +00:00
Ossfuzz36770.asm.frag Update vulkan validation errors in generated files 2022-04-14 15:09:37 +00:00
Ossfuzz36770.glsl Allow builtin code to reference builtin variables. 2022-03-28 15:37:20 +00:00
Ossfuzz36770.metal Allow builtin code to reference builtin variables. 2022-03-28 15:37:20 +00:00
Ossfuzz36852.asm.frag Use op cache for constant matrix construction. 2022-04-12 21:43:14 +00:00
Ossfuzz36852.glsl Fix fuzzer-discovered error with swizzling matrices. 2021-08-05 21:59:23 +00:00
Ossfuzz36852.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz37466.asm.frag Fix inliner bug discovered by fuzzer. 2021-08-24 14:44:43 +00:00
Ossfuzz37466.glsl Fix inliner bug discovered by fuzzer. 2021-08-24 14:44:43 +00:00
Ossfuzz37466.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz37677.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Ossfuzz37677.glsl Fix invalid variable ref-kind discovered by fuzzer. 2021-08-27 14:01:21 +00:00
Ossfuzz37677.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Ossfuzz37900.asm.frag Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
Ossfuzz37900.glsl Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
Ossfuzz37900.metal Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
Ossfuzz41000.asm.frag Replace getConstantSubexpression with getConstantValue. 2021-11-15 14:46:21 +00:00
Ossfuzz41000.glsl Replace getConstantSubexpression with getConstantValue. 2021-11-15 14:46:21 +00:00
Ossfuzz41000.metal Replace getConstantSubexpression with getConstantValue. 2021-11-15 14:46:21 +00:00
OutParams.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
OutParams.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
OutParams.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
OutParamsAreDistinct.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
OutParamsAreDistinct.glsl Fix up SkSL test on Wembley. 2022-01-31 21:17:40 +00:00
OutParamsAreDistinct.metal Fix up SkSL test on Wembley. 2022-01-31 21:17:40 +00:00
OutParamsAreDistinctFromGlobal.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
OutParamsAreDistinctFromGlobal.glsl Improve distinct-out-param test cases. 2022-03-30 18:49:15 +00:00
OutParamsAreDistinctFromGlobal.metal Improve distinct-out-param test cases. 2022-03-30 18:49:15 +00:00
OutParamsTricky.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
OutParamsTricky.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
OutParamsTricky.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Overflow.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Overflow.glsl Add overflow protection to vector-arithmetic folding. 2021-10-27 16:49:02 +00:00
Overflow.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
RectangleTexture.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
RectangleTexture.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
RectangleTexture.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ResizeMatrix.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
ResizeMatrix.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
ResizeMatrix.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ResizeMatrixNonsquare.asm.frag Use op cache when emitting matrix copies. 2022-04-14 00:23:04 +00:00
ResizeMatrixNonsquare.glsl Add GLSL workaround for 4x2 diagonal matrix bug. 2021-05-18 22:50:19 +00:00
ResizeMatrixNonsquare.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ReturnBadTypeFromMain.asm.frag Revert "Revert "Refactored SPIR-V RelaxedPrecision handling"" 2021-03-18 15:01:15 +00:00
ReturnBadTypeFromMain.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
ReturnBadTypeFromMain.metal Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
ReturnColorFromMain.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ReturnColorFromMain.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
ReturnColorFromMain.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ReturnsValueOnEveryPathES2.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ReturnsValueOnEveryPathES2.glsl Prevent no-op statements in GLSL code generator. 2022-01-19 17:36:54 +00:00
ReturnsValueOnEveryPathES2.metal Prevent no-op statements in Metal code generator. 2022-01-19 17:34:59 +00:00
ReturnsValueOnEveryPathES3.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ReturnsValueOnEveryPathES3.glsl Revert "Enable various switch tests in ES2 mode." 2021-12-02 19:03:11 +00:00
ReturnsValueOnEveryPathES3.metal Revert "Enable various switch tests in ES2 mode." 2021-12-02 19:03:11 +00:00
SampleLocations.asm.vert [sksl] Special-case unary negation on matrix types in MSL/SPIR-V 2022-03-01 20:14:46 +00:00
SampleLocations.glsl Emit qualifiers in the GLSL ES-required order. 2021-10-01 19:09:43 +00:00
SampleLocations.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
ScalarConversionConstructorsES2.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ScalarConversionConstructorsES2.glsl Migrate even more SkSL tests to run in dm. 2021-02-05 16:04:43 +00:00
ScalarConversionConstructorsES2.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ScalarConversionConstructorsES3.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ScalarConversionConstructorsES3.glsl Migrate even more SkSL tests to run in dm. 2021-02-05 16:04:43 +00:00
ScalarConversionConstructorsES3.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
ScopedSymbol.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
ScopedSymbol.glsl Match GLSL scoping rules more closely in SkSL. 2021-10-12 21:53:28 +00:00
ScopedSymbol.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StackingVectorCasts.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
StackingVectorCasts.glsl Migrate even more SkSL tests to run in dm. 2021-02-05 16:04:43 +00:00
StackingVectorCasts.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticIf.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
StaticIf.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
StaticIf.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitch.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
StaticSwitch.glsl Enable additional SkSL tests which require non-ES2 features. 2021-05-17 20:24:50 +00:00
StaticSwitch.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithBreak.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithBreak.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
StaticSwitchWithBreak.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithBreakInsideBlock.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithBreakInsideBlock.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
StaticSwitchWithBreakInsideBlock.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithConditionalBreak.asm.frag Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithConditionalBreak.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithConditionalBreak.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithConditionalBreakInsideBlock.asm.frag Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithConditionalBreakInsideBlock.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
StaticSwitchWithConditionalBreakInsideBlock.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithContinue.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
StaticSwitchWithContinue.glsl Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
StaticSwitchWithContinue.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithFallthroughA.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithFallthroughA.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
StaticSwitchWithFallthroughA.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithFallthroughB.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithFallthroughB.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
StaticSwitchWithFallthroughB.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithStaticConditionalBreak.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithStaticConditionalBreak.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
StaticSwitchWithStaticConditionalBreak.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StaticSwitchWithStaticConditionalBreakInsideBlock.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
StaticSwitchWithStaticConditionalBreakInsideBlock.glsl Performance experiment: disable control-flow analysis. 2021-03-08 19:41:19 +00:00
StaticSwitchWithStaticConditionalBreakInsideBlock.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StructArrayFollowedByScalar.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
StructArrayFollowedByScalar.glsl Fix parsing error with structs containing arrays. 2021-08-25 17:27:12 +00:00
StructArrayFollowedByScalar.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StructMaxDepth.asm.frag Reland "Use SkSL "offset" to actually mean "line"" 2021-09-27 19:48:39 +00:00
StructMaxDepth.glsl Enforce basic limits on global size in SkSL. 2021-11-04 18:34:19 +00:00
StructMaxDepth.metal Enforce basic limits on global size in SkSL. 2021-11-04 18:34:19 +00:00
Structs.asm.frag Roll SPIRV-Headers and SPIRV-Tools 2021-11-19 19:22:54 +00:00
Structs.glsl Roll SPIRV-Headers and SPIRV-Tools 2021-11-19 19:22:54 +00:00
Structs.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
StructsInFunctions.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
StructsInFunctions.glsl Reland "Fix Metal codegen error with structs containing compound types." 2021-11-15 13:29:06 +00:00
StructsInFunctions.metal Reland "Fix Metal codegen error with structs containing compound types." 2021-11-15 13:29:06 +00:00
Switch.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchDefaultOnly.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchDefaultOnlyStandaloneSettings.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchStandaloneSettings.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchWithFallthrough.glsl Distinguish between unscoped blocks and compound statements. 2022-04-11 14:34:07 +00:00
SwitchWithFallthroughStandaloneSettings.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchWithLoops.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwitchWithLoopsStandaloneSettings.glsl Re-re-reland "Rewrite switch statements in GLSL strict-ES2 mode." 2021-09-27 14:35:19 +00:00
SwizzleBoolConstants.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleBoolConstants.glsl Revert "Disable control-flow analysis in SkSL. (Performance experiment)" 2021-03-04 15:20:09 +00:00
SwizzleBoolConstants.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleByConstantIndex.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleByConstantIndex.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
SwizzleByConstantIndex.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleByIndex.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleByIndex.glsl Revert "Inline functions of the form 'return (expr)' only." 2021-03-15 22:08:48 +00:00
SwizzleByIndex.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleConstants.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleConstants.glsl Revert "Disable control-flow analysis in SkSL. (Performance experiment)" 2021-03-04 15:20:09 +00:00
SwizzleConstants.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleLTRB.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleLTRB.glsl Migrate some SkSL swizzle tests to dm. 2021-02-08 16:16:28 +00:00
SwizzleLTRB.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleOpt.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
SwizzleOpt.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
SwizzleOpt.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleScalar.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleScalar.glsl Add scalar-swizzling tests for int and bool types. 2021-07-12 19:54:40 +00:00
SwizzleScalar.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleScalarBool.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleScalarBool.glsl Allow swizzles on Boolean scalar expressions. 2021-07-12 20:33:10 +00:00
SwizzleScalarBool.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
SwizzleScalarInt.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
SwizzleScalarInt.glsl Add scalar-swizzling tests for int and bool types. 2021-07-12 19:54:40 +00:00
SwizzleScalarInt.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
TernaryAsLValueEntirelyFoldable.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
TernaryAsLValueEntirelyFoldable.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
TernaryAsLValueEntirelyFoldable.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
TernaryAsLValueFoldableTest.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
TernaryAsLValueFoldableTest.glsl Remove extraneous line-breaks in generated GLSL/Metal code. 2021-03-12 18:39:57 +00:00
TernaryAsLValueFoldableTest.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
TernaryExpression.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
TernaryExpression.glsl Eliminate unused local variables during SkSL optimization. 2021-03-16 17:22:53 +00:00
TernaryExpression.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Texture1D.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
Texture1D.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
Texture1D.metal Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
Texture2D.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
Texture2D.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
Texture2D.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
TextureSharpen.asm.frag Reland "Use op cache when emitting types." 2022-04-14 17:39:37 +00:00
TextureSharpen.glsl Reland "Always apply mipmap sharpening on GPU" 2022-04-01 17:53:28 +00:00
TextureSharpen.metal Added range highlighting to SkSL error reports 2022-04-07 13:29:48 +00:00
UnaryPositiveNegative.asm.frag Use op cache for constant matrix construction. 2022-04-12 21:43:14 +00:00
UnaryPositiveNegative.glsl [sksl] Special-case unary negation on matrix types in MSL/SPIR-V 2022-03-01 20:14:46 +00:00
UnaryPositiveNegative.metal [sksl] Special-case unary negation on matrix types in MSL/SPIR-V 2022-03-01 20:14:46 +00:00
UniformArray.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
UniformArray.glsl Add SkSL test for uniform arrays. 2021-10-05 13:25:00 +00:00
UniformArray.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
UniformBuffers.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
UniformBuffers.glsl Add default uniform binding value for Metal/SPIR-V. 2021-01-28 19:23:49 +00:00
UniformBuffers.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
Uniforms.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
Uniforms.glsl Add default uniform binding value for Metal/SPIR-V. 2021-01-28 19:23:49 +00:00
Uniforms.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
UnusedVariables.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
UnusedVariables.glsl Replace break with continue inside empty (post-optimization) loop. 2021-09-21 13:06:50 +00:00
UnusedVariables.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
VectorConstructors.asm.frag Use op cache for pointer and function types. 2022-04-14 13:00:27 +00:00
VectorConstructors.glsl Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
VectorConstructors.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
VectorScalarMath.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
VectorScalarMath.glsl Add SkSL test for vector-scalar math. 2021-03-25 23:30:34 +00:00
VectorScalarMath.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
VectorToMatrixCast.asm.frag Use op cache to eliminate OpCompositeConstruct + OpCompositeExtract. 2022-04-15 15:50:06 +00:00
VectorToMatrixCast.glsl Shore up matrix/vector conversion tests. 2021-07-12 15:02:51 +00:00
VectorToMatrixCast.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00
VertexID.asm.vert Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
VertexID.glsl Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
VertexID.metal One function for computing rt-adjust uniform once flip is determined. 2021-06-02 19:02:06 +00:00
WhileLoopControlFlow.asm.frag Replace scalar/vector ID caches with op cache. 2022-04-12 21:33:50 +00:00
WhileLoopControlFlow.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
WhileLoopControlFlow.metal Reland "Add support for half-precision types in Metal." 2021-10-30 14:33:52 +00:00