diff options
| -rw-r--r-- | src/gallium/auxiliary/util/p_debug.c | 26 | ||||
| -rw-r--r-- | src/gallium/include/pipe/p_debug.h | 5 | 
2 files changed, 31 insertions, 0 deletions
| diff --git a/src/gallium/auxiliary/util/p_debug.c b/src/gallium/auxiliary/util/p_debug.c index acdfa211c8..f373f941dd 100644 --- a/src/gallium/auxiliary/util/p_debug.c +++ b/src/gallium/auxiliary/util/p_debug.c @@ -406,6 +406,32 @@ debug_dump_enum(const struct debug_named_value *names,  const char * +debug_dump_enum_noprefix(const struct debug_named_value *names,  +                         const char *prefix, +                         unsigned long value) +{ +   static char rest[64]; +    +   while(names->name) { +      if(names->value == value) { +         const char *name = names->name; +         while (*name == *prefix) { +            name++; +            prefix++; +         } +         return name; +      } +      ++names; +   } + +    + +   util_snprintf(rest, sizeof(rest), "0x%08lx", value); +   return rest; +} + + +const char *  debug_dump_flags(const struct debug_named_value *names,                    unsigned long value)  { diff --git a/src/gallium/include/pipe/p_debug.h b/src/gallium/include/pipe/p_debug.h index 3b00fb9aa8..e9c95982dd 100644 --- a/src/gallium/include/pipe/p_debug.h +++ b/src/gallium/include/pipe/p_debug.h @@ -261,6 +261,11 @@ const char *  debug_dump_enum(const struct debug_named_value *names,                   unsigned long value); +const char * +debug_dump_enum_noprefix(const struct debug_named_value *names,  +                         const char *prefix, +                         unsigned long value); +  /**   * Convert binary flags value to a string. | 
