diff options
author | Matt Turner <[email protected]> | 2019-04-18 14:29:03 -0700 |
---|---|---|
committer | Rafael Antognolli <[email protected]> | 2019-04-22 16:54:31 -0700 |
commit | 4ec258ac3c3aab3ea4ddef8a8241b8c3f8c7d912 (patch) | |
tree | d2cd21bfef306f282414a9549f7017224c52fd1f /src/intel/dev/gen_device_info.c | |
parent | 8aae7a3998d0a01c54e21890ed8a50c9e746c576 (diff) |
intel/compiler: Improve fix_3src_operand()
Allow ATTR and IMM sources unconditionally (ATTR are just GRFs, IMM will
be handled by opt_combine_constants(). Both are already allowed by
opt_copy_propagation().
Also allow FIXED_GRF if the regioning is 8,8,1. Could also allow other
stride=1 regions (e.g., 4,4,1) and scalar regions but I don't think
those occur. This is sufficient to allow a pass added in a future commit
(fs_visitor::lower_linterp) to avoid emitting extra MOV instructions.
I removed the 'src.stride > 1' case because it seems wrong: 3-src
instructions on Gen6-9 are align16-only and can only do stride=1 or
stride=0. A run through Jenkins with an assert(src.stride <= 1) never
triggers, so it seems that it was dead code.
Reviewed-by: Rafael Antognolli <[email protected]>
Diffstat (limited to 'src/intel/dev/gen_device_info.c')
0 files changed, 0 insertions, 0 deletions