Преглед на файлове

r300g: minor cleanups after the no-rhw merge

tags/mesa-7.9-rc1
Marek Olšák преди 15 години
родител
ревизия
09653d65e9
променени са 2 файла, в които са добавени 5 реда и са изтрити 9 реда
  1. 1
    3
      src/gallium/drivers/r300/r300_state.c
  2. 4
    6
      src/gallium/drivers/r300/r300_state_derived.c

+ 1
- 3
src/gallium/drivers/r300/r300_state.c Целия файл

@@ -716,8 +716,7 @@ static void* r300_create_rs_state(struct pipe_context* pipe,
rs->vap_control_status = R300_VC_32BIT_SWAP;
#endif

/* If bypassing TCL, or if no TCL engine is present, turn off the HW TCL.
* Else, enable HW TCL and force Draw's TCL off. */
/* If no TCL engine is present, turn off the HW TCL. */
if (!r300screen->caps->has_tcl) {
rs->vap_control_status |= R300_VAP_TCL_BYPASS;
}
@@ -1121,7 +1120,6 @@ static void r300_bind_vs_state(struct pipe_context* pipe, void* shader)

r300->rs_block_state.dirty = TRUE; /* Will be updated before the emission. */
r300->vap_output_state.dirty = TRUE;
r300->vertex_stream_state.dirty = TRUE; /* XXX needed for TCL bypass */
r300->pvs_flush.dirty = TRUE;

if (r300->fs) {

+ 4
- 6
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);
}


Loading…
Отказ
Запис