summaryrefslogtreecommitdiff
path: root/src/glsl/loop_controls.cpp
AgeCommit message (Collapse)Author
2010-11-11glsl: fix crash in loop analysis when some controls can't be determinedAras Pranckevicius
Fixes loop-07.frag.
2010-09-15glsl: Fix 'format not a string literal and no format arguments' warning.Vinson Lee
Fix the following GCC warning. loop_controls.cpp: In function 'int calculate_iterations(ir_rvalue*, ir_rvalue*, ir_rvalue*, ir_expression_operation)': loop_controls.cpp:88: warning: format not a string literal and no format arguments
2010-09-13loop_controls: fix analysis of already analyzed loopsLuca Barbieri
The loop_controls pass didn't look at the counter values it put in ir_loop on previous iterations, so while the first iteration worked, subsequent ones couldn't determine max_iterations.
2010-09-03glsl2: Use as_constant some places instead of constant_expression_valueIan Romanick
The places where constant_expression_value are still used in loop analysis are places where a new expression tree is created and constant folding won't have happened. This is used, for example, when we try to determine the maximal loop iteration count. Based on review comments by Eric. "...rely on constant folding to have done its job, instead of going all through the subtree again when it wasn't a constant."
2010-09-03glsl2: Add module to perform simple loop unrollingIan Romanick
2010-09-03glsl2: Track the number of ir_loop_jump instructions that are in a loopIan Romanick
2010-09-03glsl2: Eliminate zero-iteration loopsIan Romanick
2010-09-03glsl2: Add module to suss out loop control variables from loop analysis dataIan Romanick
This is the next step on the road to loop unrolling