diff options
author | Keith Whitwell <[email protected]> | 2010-09-08 18:37:45 +0100 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2010-09-11 10:04:53 +0100 |
commit | bc759cd37e7d51977bcda46dde61d118e4c372e0 (patch) | |
tree | 427eba15200c420d59ecbc10cce26beb99dd8a85 | |
parent | b7a54b3dc6879fbcd0a1226fa6891eddd14baa36 (diff) |
llvmpipe: add DEBUG_MEM option
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_debug.h | 1 | ||||
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_scene.h | 12 | ||||
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_screen.c | 1 |
3 files changed, 14 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_debug.h b/src/gallium/drivers/llvmpipe/lp_debug.h index a928ee38bec..add43e4fca2 100644 --- a/src/gallium/drivers/llvmpipe/lp_debug.h +++ b/src/gallium/drivers/llvmpipe/lp_debug.h @@ -48,6 +48,7 @@ st_print_current(void); #define DEBUG_COUNTERS 0x800 #define DEBUG_SCENE 0x1000 #define DEBUG_FENCE 0x2000 +#define DEBUG_MEM 0x4000 #ifdef DEBUG diff --git a/src/gallium/drivers/llvmpipe/lp_scene.h b/src/gallium/drivers/llvmpipe/lp_scene.h index 49c5d4d5770..eb433f22b41 100644 --- a/src/gallium/drivers/llvmpipe/lp_scene.h +++ b/src/gallium/drivers/llvmpipe/lp_scene.h @@ -38,6 +38,7 @@ #include "os/os_thread.h" #include "lp_tile_soa.h" #include "lp_rast.h" +#include "lp_debug.h" struct lp_scene_queue; @@ -205,6 +206,11 @@ lp_scene_alloc( struct lp_scene *scene, unsigned size) assert(size <= DATA_BLOCK_SIZE); assert(block != NULL); + if (LP_DEBUG & DEBUG_MEM) + debug_printf("alloc %d block %d/%d tot %d/%d\n", + size, block->used, DATA_BLOCK_SIZE, + scene->scene_size, LP_SCENE_MAX_SIZE); + if (block->used + size > DATA_BLOCK_SIZE) { block = lp_scene_new_data_block( scene ); if (!block) { @@ -232,6 +238,12 @@ lp_scene_alloc_aligned( struct lp_scene *scene, unsigned size, struct data_block *block = list->head; assert(block != NULL); + + if (LP_DEBUG & DEBUG_MEM) + debug_printf("alloc %d block %d/%d tot %d/%d\n", + size + alignment - 1, + block->used, DATA_BLOCK_SIZE, + scene->scene_size, LP_SCENE_MAX_SIZE); if (block->used + size + alignment - 1 > DATA_BLOCK_SIZE) { block = lp_scene_new_data_block( scene ); diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c index 1e65a91fc67..363940d3a73 100644 --- a/src/gallium/drivers/llvmpipe/lp_screen.c +++ b/src/gallium/drivers/llvmpipe/lp_screen.c @@ -63,6 +63,7 @@ static const struct debug_named_value lp_debug_flags[] = { { "counters", DEBUG_COUNTERS, NULL }, { "scene", DEBUG_SCENE, NULL }, { "fence", DEBUG_FENCE, NULL }, + { "mem", DEBUG_MEM, NULL }, DEBUG_NAMED_VALUE_END }; #endif |