[Mesa-dev] [PATCH 8/8] glsl: only divide left components when it is a dual slot double.
Ian Romanick
idr at freedesktop.org
Wed Dec 9 16:52:01 PST 2015
On 12/09/2015 04:07 AM, Timothy Arceri wrote:
> On Wed, 2015-12-09 at 16:06 +1000, Dave Airlie wrote:
>> From: Dave Airlie <airlied at redhat.com>
>>
>> Signed-off-by: Dave Airlie <airlied at redhat.com>
>> ---
>> src/glsl/lower_packed_varyings.cpp | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/glsl/lower_packed_varyings.cpp
>> b/src/glsl/lower_packed_varyings.cpp
>> index 037c27d..ec9af62 100644
>> --- a/src/glsl/lower_packed_varyings.cpp
>> +++ b/src/glsl/lower_packed_varyings.cpp
>> @@ -472,7 +472,7 @@
>> lower_packed_varyings_visitor::lower_rvalue(ir_rvalue *rvalue,
>> char right_swizzle_name[4] = { 0, 0, 0, 0 };
>>
>> left_components = 4 - fine_location % 4;
>> - if (rvalue->type->is_double()) {
>> + if (rvalue->type->is_dual_slot_double()) {
>
> The subject line says what the change is but there is no explanation on
> why it was made. Can you add more detail to the comment?
>
> To me the existing code *seems* correct as all doubles take up twice
> the amount of components, why would we only divide by 2 when its a dual
> slot double?
Yeah... it seems like after this change it might try to pack a double in
the W component of a vec3.
>> /* We might actually end up with 0 left components! */
>> left_components /= 2;
>> }
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
More information about the mesa-dev
mailing list