diff options
author | Marek Olšák <maraeo@gmail.com> | 2010-03-06 23:29:17 +0100 |
---|---|---|
committer | Marek Olšák <maraeo@gmail.com> | 2010-03-06 23:29:17 +0100 |
commit | 09653d65e9650c3c04b3e8160b8f2ad7198fc122 (patch) | |
tree | d6727d06012c6730264a93e1b7750646eacb9021 /src/gallium/drivers/r300/r300_state_derived.c | |
parent | c37a20416d681a3fea42a1a2ce907eb8e11ba795 (diff) |
r300g: minor cleanups after the no-rhw merge
Diffstat (limited to 'src/gallium/drivers/r300/r300_state_derived.c')
-rw-r--r-- | src/gallium/drivers/r300/r300_state_derived.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index 9c8e907fdf..fc24cd5817 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -436,15 +436,14 @@ static void r300_update_derived_shader_state(struct r300_context* r300) struct r300_vap_output_state *vap_out = (struct r300_vap_output_state*)r300->vap_output_state.state; - /* XXX Mmm, delicious hax */ - memset(&r300->vertex_info, 0, sizeof(struct vertex_info)); - memcpy(vap_out, vs->hwfmt, sizeof(uint)*4); - r300_update_rs_block(r300, &vs->outputs, &r300->fs->inputs); if (r300screen->caps->has_tcl) { + memcpy(vap_out, vs->hwfmt, sizeof(uint)*4); r300_vertex_psc(r300); } else { + /* XXX set vap_out */ + memset(&r300->vertex_info, 0, sizeof(struct vertex_info)); r300_draw_emit_all_attribs(r300); draw_compute_vertex_size(&r300->vertex_info); r300_swtcl_vertex_psc(r300); @@ -582,8 +581,7 @@ static void r300_merge_textures_and_samplers(struct r300_context* r300) void r300_update_derived_state(struct r300_context* r300) { if (r300->rs_block_state.dirty || - r300->vertex_stream_state.dirty || /* XXX put updating this state out of this file */ - r300->rs_state.dirty) { /* XXX and remove this one (tcl_bypass dependency) */ + r300->vertex_stream_state.dirty) { /* XXX put updating PSC out of this file */ r300_update_derived_shader_state(r300); } |