diff options
author | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-10-16 17:33:51 +0200 |
---|---|---|
committer | Emil Velikov <emil.l.velikov@gmail.com> | 2016-11-08 16:23:20 +0000 |
commit | 3a030e886d459044fab3ec645c1554db3ebe05a3 (patch) | |
tree | fb0c073a81daad5848b4f7dcb517e3a84d8309f9 | |
parent | 4d478aad50ff3731727cb0fe11b17e0e853cc49b (diff) | |
download | external_mesa3d-3a030e886d459044fab3ec645c1554db3ebe05a3.zip external_mesa3d-3a030e886d459044fab3ec645c1554db3ebe05a3.tar.gz external_mesa3d-3a030e886d459044fab3ec645c1554db3ebe05a3.tar.bz2 |
st/glsl_to_tgsi: fix block copies of arrays of doubles
Set the type of the left-hand side to the same as the right-hand side,
so that when the base type is double, the writemask of the MOV instruction
is properly fixed up.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Cc: 13.0 <mesa-stable@lists.freedesktop.org>
(cherry picked from commit ca592af880b71feb8ebbf79f704380d0deb47b33)
-rw-r--r-- | src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp index 020494b..ee117c9 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -2799,6 +2799,7 @@ glsl_to_tgsi_visitor::emit_block_mov(ir_assignment *ir, const struct glsl_type * assert(type->is_scalar() || type->is_vector()); + l->type = type->base_type; r->type = type->base_type; if (cond) { st_src_reg l_src = st_src_reg(*l); |