[Mesa-dev] [PATCH] ir_to_mesa: Fix reallocating registers for shaders with loops
kenneth at whitecape.org
Sun Mar 27 10:03:00 PDT 2011
On 03/27/2011 01:17 AM, Tom Stellard wrote:
> Registers that are used inside of loops need to be considered live
> starting with the very first instruction in the loop.
> This fixes the following piglit tests on r300:
> - glsl-fs-loop-redundant-condition
> - glsl-vs-loop-redundant-condition
> - glsl-vs-vec4-indexing-temp-dst-in-loop
> NOTE: This is a candidate for the 7.9 and 7.10 branches.
This also fixes glsl-vs-loop-redundant-condition on i965.
It doesn't fix glsl-fs-loop-redunant-condition on i965, but that's
hardly surprising considering we're using a different IR and register
allocator for FS.
Strangely, glsl-vs-vec4-indexing-temp-dst-inloop already passes on i965.
I'm not sure why it would work on i965 but not r300 if the bug is in
the common code. But it's quite possible.
More information about the mesa-dev