Explorar el Código

i965: Make Gen6+ renderbuffer surface updates not depend on NEW_COLOR.

NEW_COLOR is only needed on Gen4-5 as brw_update_renderbuffer_surfaces
only uses ctx->Color when intel->gen < 6.

This should reduce unnecessary state updates.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
tags/mesa-8.0-rc1
Kenneth Graunke hace 14 años
padre
commit
9ae10e9cbd

+ 1
- 0
src/mesa/drivers/dri/i965/brw_state.h Ver fichero

extern const struct brw_tracked_state gen6_color_calc_state; extern const struct brw_tracked_state gen6_color_calc_state;
extern const struct brw_tracked_state gen6_depth_stencil_state; extern const struct brw_tracked_state gen6_depth_stencil_state;
extern const struct brw_tracked_state gen6_gs_state; extern const struct brw_tracked_state gen6_gs_state;
extern const struct brw_tracked_state gen6_renderbuffer_surfaces;
extern const struct brw_tracked_state gen6_sampler_state; extern const struct brw_tracked_state gen6_sampler_state;
extern const struct brw_tracked_state gen6_scissor_state; extern const struct brw_tracked_state gen6_scissor_state;
extern const struct brw_tracked_state gen6_sf_state; extern const struct brw_tracked_state gen6_sf_state;

+ 2
- 2
src/mesa/drivers/dri/i965/brw_state_upload.c Ver fichero

*/ */
&brw_vs_pull_constants, &brw_vs_pull_constants,
&brw_wm_pull_constants, &brw_wm_pull_constants,
&brw_renderbuffer_surfaces,
&gen6_renderbuffer_surfaces,
&brw_texture_surfaces, &brw_texture_surfaces,
&brw_binding_table, &brw_binding_table,


*/ */
&brw_vs_pull_constants, &brw_vs_pull_constants,
&brw_wm_pull_constants, &brw_wm_pull_constants,
&brw_renderbuffer_surfaces,
&gen6_renderbuffer_surfaces,
&brw_texture_surfaces, &brw_texture_surfaces,
&brw_binding_table, &brw_binding_table,



+ 9
- 0
src/mesa/drivers/dri/i965/brw_wm_surface_state.c Ver fichero

.emit = brw_update_renderbuffer_surfaces, .emit = brw_update_renderbuffer_surfaces,
}; };


const struct brw_tracked_state gen6_renderbuffer_surfaces = {
.dirty = {
.mesa = _NEW_BUFFERS,
.brw = BRW_NEW_BATCH,
.cache = 0
},
.emit = brw_update_renderbuffer_surfaces,
};

/** /**
* Construct SURFACE_STATE objects for enabled textures. * Construct SURFACE_STATE objects for enabled textures.
*/ */

Cargando…
Cancelar
Guardar