Mesa (master): r600g: avoid dynamic allocation of states
Jerome Glisse
glisse at kemper.freedesktop.org
Wed Sep 1 17:17:07 UTC 2010
Module: Mesa
Branch: master
Commit: 66e4cb1cd5a55402606a09417349d2be8b009e89
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=66e4cb1cd5a55402606a09417349d2be8b009e89
Author: Jerome Glisse <jglisse at redhat.com>
Date: Mon Aug 30 17:56:59 2010 -0400
r600g: avoid dynamic allocation of states
Make state statically allocated, this kills a bunch of code
and avoid intensive use of malloc/free. There is still a lot
of useless duplicate function wrapping that can be kill. This
doesn't improve yet performance, needs to avoid memcpy states
in radeon_ctx_set_draw and to avoid rebuilding vs_resources,
dsa, scissor, cb_cntl, ... states at each draw command.
Signed-off-by: Jerome Glisse <jglisse at redhat.com>
---
src/gallium/drivers/r600/r600_blit.c | 415 +++++++---------------------
src/gallium/drivers/r600/r600_context.c | 142 +++++-----
src/gallium/drivers/r600/r600_context.h | 31 +--
src/gallium/drivers/r600/r600_draw.c | 92 +++----
src/gallium/drivers/r600/r600_query.c | 48 ++--
src/gallium/drivers/r600/r600_resource.h | 8 +-
src/gallium/drivers/r600/r600_shader.c | 32 +--
src/gallium/drivers/r600/r600_state.c | 386 ++++++--------------------
src/gallium/drivers/r600/r600_texture.c | 100 ++-----
src/gallium/drivers/r600/radeon.h | 72 ++---
src/gallium/targets/dri-r600/Makefile | 4 +-
src/gallium/winsys/r600/drm/r600_state.c | 4 +-
src/gallium/winsys/r600/drm/radeon.c | 26 +-
src/gallium/winsys/r600/drm/radeon_ctx.c | 219 ++++++---------
src/gallium/winsys/r600/drm/radeon_draw.c | 113 +-------
src/gallium/winsys/r600/drm/radeon_priv.h | 13 +-
src/gallium/winsys/r600/drm/radeon_state.c | 55 +----
17 files changed, 523 insertions(+), 1237 deletions(-)
Diff: http://cgit.freedesktop.org/mesa/mesa/diff/?id=66e4cb1cd5a55402606a09417349d2be8b009e89
More information about the mesa-commit
mailing list