diff options
author | Connor Abbott <[email protected]> | 2015-08-03 14:53:05 -0700 |
---|---|---|
committer | Samuel Iglesias Gonsálvez <[email protected]> | 2016-05-10 11:25:05 +0200 |
commit | 0f2e227d5ce6de4697ba94ed57f5ff7ca2d86f69 (patch) | |
tree | 5586597ba9e3de0b2e6cd58a27cc43fe89067983 /src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | |
parent | 0f1690fd9514f7a282141a7ad57a06b334b6c1a4 (diff) |
i965/fs: don't propagate 64-bit immediates
They can only be used with 1-src instructions, which practically (since
we should've constant-propagated away all 1-src instructions with 64-bit
immediates in NIR) means that they must be kept in separate MOV's and
can't be propagated.
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp index 2e8c84fa34e..4d727c131d5 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp @@ -508,6 +508,8 @@ fs_visitor::try_constant_propagate(fs_inst *inst, acp_entry *entry) if (entry->src.file != IMM) return false; + if (type_sz(entry->src.type) > 4) + return false; if (entry->saturate) return false; |