skia2/tests/sksl/inliner
John Stiles c6260f9742 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>
2021-05-19 23:03:23 +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 Eliminate unreachable code during optimization. 2021-05-19 23:03:23 +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