2af4b13925
Our program-size analysis pass needs to recurse into called functions; depending on the exact order of functions in the program, this recursion can hypothetically be as deep as the deepest function-call chain. Set an upper bound on recursion here, so we don't overflow the stack while trying to check the program size. In practice, 50 frames is far deeper than a regular shader should ever go. Change-Id: I733ee48dad6f8053facdfd9f6d8a2b9b2a4af188 Bug: skia:12396 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/445279 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: John Stiles <johnstiles@google.com> Auto-Submit: John Stiles <johnstiles@google.com> |
||
---|---|---|
.. | ||
DerivativesES2.skvm | ||
ES3Types.skvm | ||
FirstClassArrays.skvm | ||
IllegalArrayOps.skvm | ||
IllegalIndexing.skvm | ||
IllegalOperators.skvm | ||
IllegalPrecisionQualifiers.skvm | ||
IllegalRecursionComplex.skvm | ||
IllegalRecursionMutual.skvm | ||
IllegalRecursionSimple.skvm | ||
IllegalShaderSampling.skvm | ||
IllegalShaderUse.skvm | ||
IllegalStatements.skvm | ||
InvalidBlendMain.skvm | ||
InvalidColorFilterFeatures.skvm | ||
InvalidColorFilterMain.skvm | ||
InvalidShaderMain.skvm | ||
LoopConditionErrors.skvm | ||
LoopExpressionErrors.skvm | ||
LoopInitializerErrors.skvm | ||
LoopStructureErrors.skvm | ||
Ossfuzz36655.skvm | ||
ProgramTooLarge_FlatLoop.skvm | ||
ProgramTooLarge_Functions.skvm | ||
ProgramTooLarge_NestedLoops.skvm | ||
ProgramTooLarge_SplitLoops.skvm | ||
ProgramTooLarge_StackDepth.skvm | ||
UnsupportedTypeFragmentProcessor.skvm | ||
UnsupportedTypeSampler.skvm | ||
UnsupportedTypeTexture.skvm |