skia2/tests/sksl/inliner
John Stiles edac7716aa Evaluate single-argument generic intrinsics at compile time.
In particular, this optimizes abs() and sign() when all inputs are known
at compile time. This resolves a TODO on a test case in
`IllegalIndexing.rts`.

Change-Id: Ica310522a85b42dc7ae255bd25004a6629d04176
Bug: skia:10835
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405676
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-10 14:50:50 +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 Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +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