diff options
author | Francisco Jerez <currojerez@riseup.net> | 2013-12-08 04:57:35 +0100 |
---|---|---|
committer | Francisco Jerez <currojerez@riseup.net> | 2014-02-12 23:07:57 +0100 |
commit | 756d37b1d6d09ad7ee3b8835888a49d4256e427b (patch) | |
tree | 14c42ac76c4de97878daf36da4953868288323e3 /src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp | |
parent | 4c7206bafdd7bde7617e14840812e43459682718 (diff) | |
download | external_mesa3d-756d37b1d6d09ad7ee3b8835888a49d4256e427b.zip external_mesa3d-756d37b1d6d09ad7ee3b8835888a49d4256e427b.tar.gz external_mesa3d-756d37b1d6d09ad7ee3b8835888a49d4256e427b.tar.bz2 |
i965/fs: Add support for specifying register horizontal strides.
v2: Some improvements for copy propagation with non-contiguous
register strides and mismatching types.
v3: Add example of the situation that the copy propagation changes are
intended to avoid. Clarify that 'fs_reg::apply_stride()' is expected
to work with zero strides too.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp b/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp index a2d88aa..2aeabad 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp @@ -85,7 +85,7 @@ fs_live_variables::setup_one_read(bblock_t *block, fs_inst *inst, * would get stomped by the first decode as well. */ int end_ip = ip; - if (v->dispatch_width == 16 && (reg.smear != -1 || + if (v->dispatch_width == 16 && (reg.smear != -1 || reg.stride == 0 || (v->pixel_x.reg == reg.reg || v->pixel_y.reg == reg.reg))) { end_ip++; |