[Mesa-dev] [PATCH] r600g: Fix UMAD on Cayman

Vadim Girlin vadimgirlin at gmail.com
Tue Apr 9 14:30:39 PDT 2013


On 04/09/2013 10:58 AM, Martin Andersson wrote:
> On Tue, Apr 9, 2013 at 3:18 AM, Marek Olšák <maraeo at gmail.com> wrote:
>> Pushed, thanks. The transform feedback test still doesn't pass, but at least
>> the hardlocks are gone.
>
> Thanks, I have looked into the other issue as well
> http://lists.freedesktop.org/archives/mesa-dev/2013-March/036941.html
>
> The problem arises when there are nested loops. If I rework the code
> so there are
> no nested loops the issue disappears. At least one pixel also needs to enter the
> outer loop. The pixels that should enter the outer loop behaves
> correctly. It is those
> pixels that should not enter the outer loop that misbehaves. It does
> not matter if they
> also fails the test for the inner loop, they will still execute the
> instruction inside. That
> leads to the strange results for that test.

Please test the attached patch.

Vadim

>
> The strangeness is easier to see if the NUM_POINTS in the
> ext_transform_feedback/
> order.c are run with smaller values,like 3, 6 and 9. Disable the code
> that fail the test
> and print starting_x, shift_reg_final and iteration_count.
>
> Marek, since you implemented transform feedback for r600, do you think the issue
> is with the tranform feedback code or the shader compiler or some other thing?
>
> //Martin
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-r600g-use-ALU-EXECUTE_MASK_OP-on-cayman-instead-of-L.patch
Type: text/x-patch
Size: 3454 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130410/e4a649a6/attachment-0001.bin>


More information about the mesa-dev mailing list