i965/vs: Fix GL_FIXED setup when a writemask is present.
authorEric Anholt <eric@anholt.net>
Tue, 23 Aug 2011 20:30:42 +0000 (13:30 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 30 Aug 2011 19:09:40 +0000 (12:09 -0700)
commit81a0b2166991a3015f8336e184c34cf6a92adfe0
tree5122ce9f1e31f31c760f9679b60c41163acab43c
parent72cfc6f3778d8297e52c254a5861a88eb62e4d67
i965/vs: Fix GL_FIXED setup when a writemask is present.

By emitting code before generate_code(), we ended up in align1 mode
where writemasks don't exist, so we rescaled gl_Vertex.w and things
went badly.  By moving GL_FIXED support to the visitor, we end up with
normal codegen, and as a bonus the GL_FIXED setup ends up getting
printed appropriately in debug output.

Fixes gtf/GL2Tests/fixed_data_type

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