skia2/tests/sksl/runtime
John Stiles 857c7f9dc5 Add program-too-large test using for loops without blocks.
The fuzzer has discovered a bug in our program size-checking logic; for
loops that immediately contain another for loop (with no block) were not
counting the inner loop's iterations. This allowed it to exceed our
maximum program-size threshold (and time out during SkVM compilation).

This test demonstrates the issue. A followup will fix it.

Change-Id: I3b7d4c8a4f0ed04cf0aba3f1a32fdad7d6d784e7
Bug: oss-fuzz:37837
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449096
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 14:19:00 +00:00
..
AllowNarrowingConversions.skvm Add test for Runtime Effects and narrowing conversions. 2021-08-03 15:58:46 +00:00
AllowNarrowingConversions.stage Add test for Runtime Effects and narrowing conversions. 2021-08-03 15:58:46 +00:00
ArrayIndexing.skvm Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
ArrayIndexing.stage Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
ArrayNarrowingConversions.skvm Add unit test for array narrowing conversions. 2021-08-06 13:05:35 +00:00
ArrayNarrowingConversions.stage Add tests for array assignment with narrowing conversions. 2021-08-11 12:56:40 +00:00
Blend.skvm Add dest-color support to the Pipeline stage. 2021-06-09 22:09:21 +00:00
Blend.stage Add dest-color support to the Pipeline stage. 2021-06-09 22:09:21 +00:00
ConstPreservation.skvm Test that we propagate 'const' to the GPU backend of runtime effects 2021-03-09 23:26:00 +00:00
ConstPreservation.stage Remove usage of sqrt() as an optimization barrier in tests. 2021-05-24 17:18:54 +00:00
ConversionConstructors.skvm Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
ConversionConstructors.stage Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
GlobalVariables.skvm Support initializers on global variables in SkSL to SkVM 2021-02-17 20:40:32 +00:00
GlobalVariables.stage Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
GLSLTypeNames.skvm Add ivec GLSL type aliases to runtime effects 2021-04-12 16:55:41 +00:00
GLSLTypeNames.stage Add ivec GLSL type aliases to runtime effects 2021-04-12 16:55:41 +00:00
LargeProgram_BlocklessLoops.skvm Add program-too-large test using for loops without blocks. 2021-09-15 14:19:00 +00:00
LargeProgram_BlocklessLoops.stage Add program-too-large test using for loops without blocks. 2021-09-15 14:19:00 +00:00
LargeProgram_FlatLoop.skvm Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_FlatLoop.stage Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_Functions.skvm Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_Functions.stage Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_NestedLoops.skvm Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_NestedLoops.stage Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_SplitLoops.skvm Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_SplitLoops.stage Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_StackDepth.skvm Reject programs which exceed 50 stack frames during size analysis. 2021-09-03 02:41:34 +00:00
LargeProgram_StackDepth.stage Reject programs which exceed 50 stack frames during size analysis. 2021-09-03 02:41:34 +00:00
LargeProgram_ZeroIterFor.skvm Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LargeProgram_ZeroIterFor.stage Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
LoopFloat.skvm Improve unit testing of for-loops. 2021-09-07 14:11:04 +00:00
LoopFloat.stage Improve unit testing of for-loops. 2021-09-07 14:11:04 +00:00
LoopInt.skvm Improve unit testing of for-loops. 2021-09-07 14:11:04 +00:00
LoopInt.stage Improve unit testing of for-loops. 2021-09-07 14:11:04 +00:00
PrecisionQualifiers.skvm Honor lowp/mediump/highp precision qualifiers in IRGenerator. 2021-08-04 21:29:10 +00:00
PrecisionQualifiers.stage Honor lowp/mediump/highp precision qualifiers in IRGenerator. 2021-08-04 21:29:10 +00:00
SampleWithExplicitCoord.skvm Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
SampleWithExplicitCoord.stage Convert internal SkSL to use .eval() 2021-09-03 15:54:54 +00:00
VectorIndexing.skvm Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00
VectorIndexing.stage Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00