i965/fs_nir: Get rid of get_alu_src
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 22 Jan 2015 00:00:55 +0000 (16:00 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 3 Feb 2015 20:33:11 +0000 (12:33 -0800)
commit8776b1b14b229d110f283f5da8c3c36261068ede
tree27e1244b9cfaef8d9ff1c0cca05fb3ea8af51876
parent112d738b91aac44c2509aafe68bdbf9ab74bb3c1
i965/fs_nir: Get rid of get_alu_src

Originally, get_alu_src was supposed to handle resolving swizzles and
things like that.  However, now that basically every instruction we have
only takes scalar sources, we don't really need it anymore.  The only case
where it's still marginally useful is for the mov and vecN operations that
are left over from SSA form.  We can handle those cases as a special case
easily enough.  As a side-effect, we don't need the vec_to_movs pass
anymore.

v2 Jason Ekstrand <jason.ekstrand@intel.com>:
 - Rework the way we detect if we need an extra copy for swizzling.  The
   old code involved a pile of confusing switch fall-throughs; we now use a
   loop.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs.h
src/mesa/drivers/dri/i965/brw_fs_nir.cpp