i965/fs: Use source's original type in register_coalesce().
Previously, register_coalesce() would modify mov vgrf1:f vgrf2:f cmp null vgrf3:d vgrf1:d to be cmp null vgrf3:d vgrf2:f and incorrectly use vgrf2's type in the instruction that the mov was coalesced into. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -2429,6 +2429,7 @@ fs_visitor::register_coalesce()
|
||||
scan_inst->src[i].reg == inst->dst.reg &&
|
||||
scan_inst->src[i].reg_offset == inst->dst.reg_offset) {
|
||||
fs_reg new_src = inst->src[0];
|
||||
new_src.type = scan_inst->src[i].type;
|
||||
if (scan_inst->src[i].abs) {
|
||||
new_src.negate = 0;
|
||||
new_src.abs = 1;
|
||||
|
||||
Reference in New Issue
Block a user