update_swtnl_draw( struct svga_context *svga,
unsigned dirty )
{
+ SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_SWTNLUPDATEDRAW);
+
draw_flush( svga->swtnl.draw );
if (dirty & SVGA_NEW_VS)
(svga->curr.framebuffer.zsbuf) ?
svga->curr.framebuffer.zsbuf->format : PIPE_FORMAT_NONE);
+ SVGA_STATS_TIME_POP(svga_sws(svga));
return PIPE_OK;
}
unsigned i;
int any_change;
+ SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_SWTNLUPDATEVDECL);
+
memset(vinfo, 0, sizeof(*vinfo));
memset(vdecl, 0, sizeof(vdecl));
enum pipe_error ret;
if (!any_change && svga_render->layout_id != SVGA3D_INVALID_ID) {
- return PIPE_OK;
+ goto done;
}
if (svga_render->layout_id != SVGA3D_INVALID_ID) {
}
else {
if (!any_change)
- return PIPE_OK;
+ goto done;
}
memcpy(svga_render->vdecl, vdecl, sizeof(vdecl));
svga->swtnl.new_vdecl = TRUE;
- return 0;
+done:
+ SVGA_STATS_TIME_POP(svga_sws(svga));
+ return PIPE_OK;
}