skia2/tests/sksl/inliner
John Stiles 25be58e24b Reland "Eliminate unreachable code during optimization."
This is a reland of c6260f9742

Problematic DeadReturn.sksl test cases have been moved to DeadReturnES3.

Original change's description:
> Eliminate unreachable code during optimization.
>
> The Adreno 5xx and 6xx previously failed the SkSLStaticSwitchInline
> test; the driver struggled to interpret code with multiple return
> statements in a row. We now detect unreachable statements and eliminate
> them.
>
> Change-Id: I344d632f2488ca65b0635b37bebffe6e4fb607c5
> Bug: skia:12012
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/410256
> Auto-Submit: John Stiles <johnstiles@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

Bug: skia:12012
Change-Id: I748e8761cbc71c811b5ad8fe49186f980261d8b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/410793
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>
2021-05-20 20:02:15 +00:00
..
DoWhileBodyMustBeInlinedIntoAScope.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
DoWhileTestCannotBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
EnumsCanBeInlinedSafely.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
ExponentialGrowth.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
ExponentialGrowthStandaloneSettings.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
ForBodyMustBeInlinedIntoAScope.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
ForInitializerExpressionsCanBeInlined.glsl Loosen ES3 restrictions in Runtime Effects for debugging. 2021-04-28 19:59:36 +00:00
ForWithoutReturnInsideCanBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
ForWithReturnInsideCannotBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
IfBodyMustBeInlinedIntoAScope.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
IfElseBodyMustBeInlinedIntoAScope.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
IfElseChainWithReturnsCanBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
IfTestCanBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
IfWithReturnsCanBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineKeywordOverridesThreshold.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlinerAvoidsVariableNameOverlap.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlinerCanBeDisabled.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
InlinerCanBeDisabledStandaloneSettings.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
InlinerElidesTempVarForReturnsInsideBlock.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlinerHonorsGLSLOutParamSemantics.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
InlinerManglesNames.glsl Allow multiple expressions on the same statement to be inlined. 2021-03-19 15:14:24 +00:00
InlinerUsesTempVarForMultipleReturns.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlinerUsesTempVarForReturnsInsideBlockWithVar.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineThreshold.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineWithInoutArgument.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineWithModifiedArgument.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineWithNestedBigCalls.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineWithNestedCalls.glsl Disallow inlining a function with out-parameters. 2021-03-17 18:04:00 +00:00
InlineWithUnmodifiedArgument.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
InlineWithUnnecessaryBlocks.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
NoInline.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
ShortCircuitEvaluationsCannotInlineRightHandSide.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
StaticSwitch.glsl Reland "Eliminate unreachable code during optimization." 2021-05-20 20:02:15 +00:00
StructsCanBeInlinedSafely.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
SwitchWithCastCanBeInlined.glsl Revert "Inline functions of the form 'return (expr)' only." 2021-03-15 22:08:48 +00:00
SwitchWithoutReturnInsideCanBeInlined.glsl Revert "Inline functions of the form 'return (expr)' only." 2021-03-15 22:08:48 +00:00
SwizzleCanBeInlinedDirectly.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
TernaryResultsCannotBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
TernaryTestCanBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
TrivialArgumentsInlineDirectly.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
WhileBodyMustBeInlinedIntoAScope.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
WhileTestCannotBeInlined.glsl Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00