r300: Remove ugly PSIZ hack

Instead of setting Sourced, we simply force writemasks to begin with.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
This commit is contained in:
Nicolai Hähnle 2009-07-25 00:50:53 +02:00
parent 05a51f4b3d
commit d6a304800b

View file

@ -607,12 +607,8 @@ static void nqssadceInit(struct nqssadce_state* s)
int i;
for(i = 0; i < VERT_RESULT_MAX; ++i) {
if (compiler->RequiredOutputs & (1 << i)) {
if (i != VERT_RESULT_PSIZ)
s->Outputs[i].Sourced = WRITEMASK_XYZW;
else
s->Outputs[i].Sourced = WRITEMASK_X; /* ugly hack! */
}
if (compiler->RequiredOutputs & (1 << i))
s->Outputs[i].Sourced = WRITEMASK_XYZW;
}
}
@ -631,6 +627,8 @@ void r3xx_compile_vertex_program(struct r300_vertex_program_compiler* compiler)
rc_mesa_to_rc_program(&compiler->Base, compiler->program);
compiler->program = 0;
rc_move_output(&compiler->Base, VERT_RESULT_PSIZ, VERT_RESULT_PSIZ, WRITEMASK_X);
if (compiler->state.WPosAttr != FRAG_ATTRIB_MAX) {
rc_copy_output(&compiler->Base,
VERT_RESULT_HPOS,