i965/fs: Revert "Avoid generating MOVs for assignments for expressions."
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 26 Aug 2011 19:05:07 +0000 (12:05 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Mon, 29 Aug 2011 18:39:41 +0000 (11:39 -0700)
commitd28a3bd4bf25157aff5379a003bbf4a66157ed06
tree7f1dc00e2f9cd825c2060da3ab8c24d6a16fa71f
parent55d232a81566cf7ab8855c42e2ef1a280276a04c
i965/fs: Revert "Avoid generating MOVs for assignments for expressions."

This reverts commit 53c89c67f33639afef951e178f93f4e29acc5d53, along with
the subsequent this->result = reg_undef additions it required.

Both Eric and I agree that the way he did this is really fragile; if you
forget to add this->result = reg_undef before calling accept(), it may
end up using the same register for two separate things, breaking things
in strange and mysterious ways.

The next commit will port over the new VS backend's method for solving
this problem, which is simpler, less intrusive, and still manages to
avoid MOVs in the common case.
src/mesa/drivers/dri/i965/brw_fs.h
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp