gallium: Remove the debug_mask_* stuff.
authorJosé Fonseca <jrfonseca@tungstengraphics.com>
Sun, 23 Mar 2008 18:57:35 +0000 (18:57 +0000)
committerJosé Fonseca <jrfonseca@tungstengraphics.com>
Sun, 23 Mar 2008 18:57:35 +0000 (18:57 +0000)
Overcomplex and not much different from using a global variable...

src/gallium/auxiliary/util/p_debug.c
src/gallium/include/pipe/p_debug.h

index c51e9e6..19ad3f4 100644 (file)
@@ -168,40 +168,6 @@ void debug_assert_fail(const char *expr, const char *file, unsigned line)
 }
 
 
-#define DEBUG_MASK_TABLE_SIZE 256
-
-
-/**
- * Mask hash table.
- * 
- * For now we just take the lower bits of the key, and do no attempt to solve
- * collisions. Use a proper hash table when we have dozens of drivers. 
- */
-static uint32_t debug_mask_table[DEBUG_MASK_TABLE_SIZE];
-
-
-void debug_mask_set(uint32_t uuid, uint32_t mask) 
-{
-   unsigned hash = uuid & (DEBUG_MASK_TABLE_SIZE - 1);
-   debug_mask_table[hash] = mask;
-}
-
-
-uint32_t debug_mask_get(uint32_t uuid)
-{
-   unsigned hash = uuid & (DEBUG_MASK_TABLE_SIZE - 1);
-   return debug_mask_table[hash];
-}
-
-
-void debug_mask_vprintf(uint32_t uuid, uint32_t what, const char *format, va_list ap)
-{
-   uint32_t mask = debug_mask_get(uuid);
-   if(mask & what)
-      debug_vprintf(format, ap);
-}
-
-
 const char *
 debug_dump_enum(const struct debug_named_value *names, 
                 unsigned long value)
index c549513..15fc200 100644 (file)
@@ -103,70 +103,6 @@ void debug_assert_fail(const char *expr, const char *file, unsigned line);
 #define assert(expr) debug_assert(expr)
 
 
-/**
- * Set a channel's debug mask.
- * 
- * uuid is just a random 32 bit integer that uniquely identifies the debugging 
- * channel. 
- * 
- * @note Due to current implementation issues, make sure the lower 8 bits of 
- * UUID are unique.
- */
-void debug_mask_set(uint32_t uuid, uint32_t mask);
-
-
-uint32_t debug_mask_get(uint32_t uuid);
-
-
-/**
- * Conditional debug output. 
- * 
- * This is just a generalization of the debug filtering mechanism used 
- * throughout Gallium.
- * 
- * You use this function as:
- * 
- * @code
- * #define MYDRIVER_UUID 0x12345678 // random 32 bit identifier
- * 
- * static void inline 
- * mydriver_debug(uint32_t what, const char *format, ...)
- * {
- * #ifdef DEBUG
- *    va_list ap;
- *    va_start(ap, format);
- *    debug_mask_vprintf(MYDRIVER_UUID, what, format, ap);
- *    va_end(ap);
- * #endif
- * }
- * 
- * ...
- * 
- *    debug_mask_set(MYDRIVER_UUID, 
- *                   MYDRIVER_DEBUG_THIS | 
- *                   MYDRIVER_DEBUG_THAT |
- *                   ... );
- * 
- * ...
- * 
- *    mydriver_debug(MYDRIVER_DEBUG_THIS,
- *                   "this and this happened\n");
- *
- *    mydriver_debug(MYDRIVER_DEBUG_THAT,
- *                   "that = %f\n", that);
- * ...
- * @endcode     
- * 
- * You can also define several variants of mydriver_debug, with hardcoded what. 
- * Note that although macros with variable number of arguments would accomplish 
- * more in less code, they are not portable. 
- */
-void debug_mask_vprintf(uint32_t uuid, 
-                        uint32_t what, 
-                        const char *format, 
-                        va_list ap);
-
-
 #ifdef DEBUG
 #define debug_warning(__msg) \
    debug_printf("%s:%i:warning: %s\n", __FILE__, __LINE__, (__msg))