i965/fs: Fix stride for multiply in macro.

We have to use W/UW type for src1 of the multiply in the MUL/MACH macro,
but in order to read the low 16-bits of each 32-bit integer, we need to
set the appropriate stride.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Matt Turner 2015-04-24 11:28:04 -07:00
parent b3e29a2022
commit ecf428aa59
1 changed files with 2 additions and 0 deletions

View File

@ -916,8 +916,10 @@ fs_visitor::visit(ir_expression *ir)
mul->src[1].type == BRW_REGISTER_TYPE_UD);
if (mul->src[1].type == BRW_REGISTER_TYPE_D) {
mul->src[1].type = BRW_REGISTER_TYPE_W;
mul->src[1].stride = 2;
} else {
mul->src[1].type = BRW_REGISTER_TYPE_UW;
mul->src[1].stride = 2;
}
}