mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-18 02:30:28 +01:00
i965: Fix copy propagation type changes.
commit472ef9a02fintroduced code to change the types of SEL and MOV instructions for moves that simply "copy bits around". It didn't account for type conversion moves, however. So it would happily turn this: mov(8) vgrf6:D, -vgrf5:D mov(8) vgrf7:F, vgrf6:UD into this: mov(8) vgrf6:D, -vgrf5:D mov(8) vgrf7:D, -vgrf5:D which erroneously drops the conversion to float. Cc: "11.0 10.6" <mesa-stable@lists.freedesktop.org> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> (cherry picked from commit2ace64fd59)
This commit is contained in:
parent
eef8258a86
commit
0c98ba7abf
1 changed files with 1 additions and 0 deletions
|
|
@ -279,6 +279,7 @@ static bool
|
|||
can_change_source_types(fs_inst *inst)
|
||||
{
|
||||
return !inst->src[0].abs && !inst->src[0].negate &&
|
||||
inst->dst.type == inst->src[0].type &&
|
||||
(inst->opcode == BRW_OPCODE_MOV ||
|
||||
(inst->opcode == BRW_OPCODE_SEL &&
|
||||
inst->predicate != BRW_PREDICATE_NONE &&
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue