[Bug 62696] [r300g, bisected] Around 50 piglit vs variable-indexing tests fails after "glsl_to_tgsi: allocate arrays separately v2"

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Mar 25 01:51:34 PDT 2013


https://bugs.freedesktop.org/show_bug.cgi?id=62696

Christian König <deathsimple at vodafone.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |NEEDINFO

--- Comment #5 from Christian König <deathsimple at vodafone.de> ---
(In reply to comment #4)
> I thought the array support was backward compatible. If if were true, this
> patch wouldn't be needed, right?

Yes indeed, and I find that rather strange, too.

Well one thing that I haven't considered before is that when a target doesn't
support indirect addressing all indirect accesses are replaced with a chain of
"if (i == 0) then return x[0] else if (i == 1) then return x[1].....", so
having arrays separated makes this inefficient code even more inefficient
(cause the register scavenger then leaves arrays alone), that's what this patch
really should fix.

But you're right, it should NEVER result in incorrect code, so we either have a
bug in R300g that's triggered by using more registers than necessary
(unlikely), or we are still missing something in the glsl_to_tgsi pass
(likely).

@Pavel: Could you make sure that the vs-uniform-array-mat2-col-row-rd test is
indeed failing with that change? And also please attach a log of the good case
for this test.

Thanks in advance,
Christian.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20130325/d068cf4d/attachment-0001.html>


More information about the dri-devel mailing list