skia2/resources/sksl/runtime_errors/ProgramTooLarge_BlocklessLoops.rts
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

13 lines
258 B
Plaintext

half4 main(float2 xy) {
int i;
for (int a=0; a<10; ++a) // 10
for (int b=0; b<10; ++b) // 100
for (int c=0; c<10; ++c) // 1000
for (int d=0; d<10; ++d) // 10000
for (int e=0; e<10; ++e) // 100000
++i;
return half4(0);
}