st/glsl_to_tgsi: fix st_src_reg_for_double constant.

This needs to set the src swizzle so it doesn't access the .zw
members ever when we are just emitting a 0 constant here.

This fixes:
vert-conversion-explicit-dvec3-bvec3.shader_test
and a bunch of other fp64 tests on softpipe and radeonsi.

Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 26187f3890)
This commit is contained in:
Dave Airlie 2016-07-05 10:26:14 +10:00 committed by Emil Velikov
parent 6847a37363
commit 7fe8cad4e4

View file

@ -1136,7 +1136,7 @@ glsl_to_tgsi_visitor::st_src_reg_for_double(double val)
uval[0].u = *(uint32_t *)&val;
uval[1].u = *(((uint32_t *)&val) + 1);
src.index = add_constant(src.file, uval, 1, GL_DOUBLE, &src.swizzle);
src.swizzle = MAKE_SWIZZLE4(SWIZZLE_X, SWIZZLE_Y, SWIZZLE_X, SWIZZLE_Y);
return src;
}