This heuristic makes more sense than the previous "ifs with a discontinuous loop" as the reason we need to flatten is that we need gradients to be in branchless code. Change the UnrollFlatten test accordingly. Tested with: - the WebGL CTS - dev.miaumiau.cat/rayTracer "Skull Demo" - THe turbulenz engine GPU particle demo - Lots of ShaderToy Samples (inc. Volcanic, Metropolis and Hierarchical Voronoi) - Google Maps Earth mode - Lots of Chrome experiments - madebyevan.com/webgl-water BUG=524297 Change-Id: Iaa727036fffcfde3952716a1ef33b6ee0546b69d Reviewed-on: https://chromium-review.googlesource.com/296442Reviewed-by:Jamie Madill <jmadill@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| API_test.cpp | Loading commit data... | |
| BuiltInFunctionEmulator_test.cpp | Loading commit data... | |
| CollectVariables_test.cpp | Loading commit data... | |
| ConstantFolding_test.cpp | Loading commit data... | |
| DebugShaderPrecision_test.cpp | Loading commit data... | |
| EXT_blend_func_extended_test.cpp | Loading commit data... | |
| ExpressionLimit_test.cpp | Loading commit data... | |
| IntermNode_test.cpp | Loading commit data... | |
| MalformedShader_test.cpp | Loading commit data... | |
| NV_draw_buffers_test.cpp | Loading commit data... | |
| Pack_Unpack_test.cpp | Loading commit data... | |
| PruneUnusedFunctions_test.cpp | Loading commit data... | |
| RecordConstantPrecision_test.cpp | Loading commit data... | |
| RemovePow_test.cpp | Loading commit data... | |
| ShaderExtension_test.cpp | Loading commit data... | |
| ShaderVariable_test.cpp | Loading commit data... | |
| TypeTracking_test.cpp | Loading commit data... | |
| UnrollFlatten_test.cpp | Loading commit data... | |
| VariablePacker_test.cpp | Loading commit data... |