Module: Mesa Branch: lp-binning Commit: de10168a462f57ead41800ea135476bb5ae8c678 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=de10168a462f57ead41800ea135476bb5ae8c678
Author: Brian Paul <[email protected]> Date: Tue Jan 12 17:06:19 2010 -0700 llvmpipe: added lp_scene_is_empty() --- src/gallium/drivers/llvmpipe/lp_scene.c | 22 ++++++++++++++++++++++ src/gallium/drivers/llvmpipe/lp_scene.h | 2 ++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/llvmpipe/lp_scene.c b/src/gallium/drivers/llvmpipe/lp_scene.c index 774a1fe..70d5847 100644 --- a/src/gallium/drivers/llvmpipe/lp_scene.c +++ b/src/gallium/drivers/llvmpipe/lp_scene.c @@ -67,6 +67,28 @@ lp_scene_init(struct lp_scene *scene) /** + * Check if the scene's bins are all empty. + * For debugging purposes. + */ +boolean +lp_scene_is_empty(struct lp_scene *scene ) +{ + unsigned x, y; + + for (y = 0; y < TILES_Y; y++) { + for (x = 0; x < TILES_X; x++) { + const struct cmd_bin *bin = lp_scene_get_bin(scene, x, y); + const struct cmd_block_list *list = &bin->commands; + if (list->head != list->tail || list->head->count > 0) { + return FALSE; + } + } + } + return TRUE; +} + + +/** * Set scene to empty state. */ void diff --git a/src/gallium/drivers/llvmpipe/lp_scene.h b/src/gallium/drivers/llvmpipe/lp_scene.h index 796fc51..7255727 100644 --- a/src/gallium/drivers/llvmpipe/lp_scene.h +++ b/src/gallium/drivers/llvmpipe/lp_scene.h @@ -133,6 +133,8 @@ void lp_scene_destroy(struct lp_scene *scene); void lp_scene_init(struct lp_scene *scene); +boolean lp_scene_is_empty(struct lp_scene *scene ); + void lp_scene_reset(struct lp_scene *scene ); void lp_scene_free_bin_data(struct lp_scene *scene); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
