diff options
author | Kenneth Graunke <[email protected]> | 2014-02-10 15:37:09 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2014-02-11 02:21:35 -0800 |
commit | e95a4ed2967346e6ff7efb9897d8c430fcaa90f7 (patch) | |
tree | 9d87ef9c5bda99bdb294e9edb71b2260d5b0620b /src | |
parent | f948ad2a070a3b1cd69e7feca6eb3d5764438d9e (diff) |
i965/fs: Simplify FS_OPCODE_SET_OMASK stride mashing a bit.
In the first case, we can simply call stride(mask, 16, 8, 2) rather than
creating a new register with a different stride, then immediately
changing it a second time.
In the second case, the stride was already what we wanted, so we can
just use mask without any changes at all.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp index 26913d292e3..4820b042876 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp @@ -1130,11 +1130,9 @@ fs_generator::generate_set_omask(fs_inst *inst, brw_set_mask_control(p, BRW_MASK_DISABLE); if (stride_8_8_1) { - brw_MOV(p, dst, stride(retype(brw_vec1_reg(mask.file, mask.nr, 0), - dst.type), 16, 8, 2)); + brw_MOV(p, dst, retype(stride(mask, 16, 8, 2), dst.type)); } else if (stride_0_1_0) { - brw_MOV(p, dst, stride(retype(brw_vec1_reg(mask.file, mask.nr, 0), - dst.type), 0, 1, 0)); + brw_MOV(p, dst, retype(mask, dst.type)); } brw_pop_insn_state(p); } |