On 14 August 2013 21:07, Kenneth Graunke <[email protected]> wrote:
> For some reason, we didn't use this information even though the VS > backend has computed it (albeit poorly) for ages. > > Signed-off-by: Kenneth Graunke <[email protected]> > For some reason I can't get this series to apply cleanly. Can you post a branch somewhere? > --- > src/mesa/drivers/dri/i965/brw_vs_surface_state.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/src/mesa/drivers/dri/i965/brw_vs_surface_state.c > b/src/mesa/drivers/dri/i965/brw_vs_surface_state.c > index 2c2d713..4577e76 100644 > --- a/src/mesa/drivers/dri/i965/brw_vs_surface_state.c > +++ b/src/mesa/drivers/dri/i965/brw_vs_surface_state.c > @@ -145,7 +145,8 @@ brw_vs_upload_binding_table(struct brw_context *brw) > /* CACHE_NEW_VS_PROG: Skip making a binding table if we don't use > textures or > * pull constants. > */ > - if (brw->vs.prog_data->base.binding_table_size == 0) { > + const unsigned entries = brw->vs.prog_data->base.binding_table_size; > + if (entries == 0) { > if (brw->vs.bind_bo_offset != 0) { > brw->state.dirty.brw |= BRW_NEW_VS_BINDING_TABLE; > brw->vs.bind_bo_offset = 0; > @@ -157,11 +158,11 @@ brw_vs_upload_binding_table(struct brw_context *brw) > * space for the binding table. > */ > bind = brw_state_batch(brw, AUB_TRACE_BINDING_TABLE, > - sizeof(uint32_t) * BRW_MAX_VS_SURFACES, > + sizeof(uint32_t) * entries, > 32, &brw->vs.bind_bo_offset); > > /* BRW_NEW_SURFACES and BRW_NEW_VS_CONSTBUF */ > - for (i = 0; i < BRW_MAX_VS_SURFACES; i++) { > + for (i = 0; i < entries; i++) { > bind[i] = brw->vs.surf_offset[i]; > } > > -- > 1.8.3.4 > > _______________________________________________ > mesa-dev mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
