[Mesa-dev] [PATCH] glsl: correctly handle inout parameters post function inlining

Ilia Mirkin imirkin at alum.mit.edu
Fri May 6 14:43:16 UTC 2016


I think you want a loop there, peeling off all array dereferences, due
to AoA (and maybe throw in some piglit tests to cover that). [Assuming
AoA's can be function arguments... haven't checked the spec.]

On Fri, May 6, 2016 at 10:39 AM, Lars Hamre <chemecse at gmail.com> wrote:
> Hi Juan,
>
> Sorry I missed that.
>
> It looks like your patch doesn't fix the out parameter indexing for:
> vs-inout-index-inout-mat2-col
> vs-inout-index-inout-vec4-array
>
> I was able to extend your patch to get these tests passing by:
>   - if the ir_array->array was a dereferenced_array, copy propagate it's index
>   - if the ir->ir_type == ir_type_swizzle, if it's val was a dereferenced_array,
>     copying propagate it's index
>
> I would rather move ahead with your patch as mine seems quite
> "hacky" in comparison :)
>
> Regards,
> Lars Hamre
>
> On Fri, May 6, 2016 at 9:53 AM, Juan A. Suarez Romero
> <jasuarez at igalia.com> wrote:
>> On Fri, 2016-05-06 at 08:49 -0400, Lars Hamre wrote:
>>> Inout parameters which depended on other inout parameters
>>> where not assigned in the correct order.
>>>
>>> Fixes the following piglit tests in shaders/out-parameter-indexing:
>>> vs-inout-index-inout-float-array
>>> vs-inout-index-inout-mat2-col
>>> vs-inout-index-inout-mat2-row
>>> vs-inout-index-inout-vec4
>>> vs-inout-index-inout-vec4-array
>>> vs-inout-index-inout-vec4-array-element
>>
>>
>> Some days ago I sent a patch that also fixes some of these tests in a
>> different way.
>>
>> https://lists.freedesktop.org/archives/mesa-dev/2016-May/115621.html
>>
>>
>>
>>         J.A.
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list