Mesa (main): intel/genxml: Collapse leading underscores on prefixed value defines

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Nov 16 11:53:23 UTC 2021


Module: Mesa
Branch: main
Commit: ebc0099d89114096fcdee76dcb189ad0307d7eba
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ebc0099d89114096fcdee76dcb189ad0307d7eba

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Oct 29 03:33:35 2021 -0700

intel/genxml: Collapse leading underscores on prefixed value defines

We prefix names with an underscore to make them "safe" C identifiers
when necessary.  For example, a value of "32x32" would become "_32x32".

However, when specifying something like

   <field ... prefix="BLOCK_SIZE">
     <value name="32x32" value="0"/>
   </field>

we already have a prefix that makes the field name safe.  We'd rather
generate a name with a single underscore, i.e.

    #define BLOCK_SIZE_32x32 0

rather than

    #define BLOCK_SIZE__32x32 0

This also fixes up affected defines in crocus.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13809>

---

 src/gallium/drivers/crocus/crocus_blt.c | 6 +++---
 src/intel/genxml/gen_pack_header.py     | 6 +++++-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/crocus/crocus_blt.c b/src/gallium/drivers/crocus/crocus_blt.c
index a63f62bd2fd..1a3cf326edc 100644
--- a/src/gallium/drivers/crocus/crocus_blt.c
+++ b/src/gallium/drivers/crocus/crocus_blt.c
@@ -35,9 +35,9 @@ static uint32_t
 color_depth_for_cpp(int cpp)
 {
    switch (cpp) {
-   case 4: return COLOR_DEPTH__32bit;
-   case 2: return COLOR_DEPTH__565;
-   case 1: return COLOR_DEPTH__8bit;
+   case 4: return COLOR_DEPTH_32bit;
+   case 2: return COLOR_DEPTH_565;
+   case 1: return COLOR_DEPTH_8bit;
    default:
       unreachable("not reached");
    }
diff --git a/src/intel/genxml/gen_pack_header.py b/src/intel/genxml/gen_pack_header.py
index e9ba0003f51..310d9aa869a 100644
--- a/src/intel/genxml/gen_pack_header.py
+++ b/src/intel/genxml/gen_pack_header.py
@@ -336,7 +336,11 @@ class Field(object):
         prefix = self.prefix + '_' if self.prefix else ''
 
         for value in self.values:
-            print("#define %-40s %d" % (prefix + value.name, value.value))
+            name = value.name
+            if self.prefix and value.name[0] == '_':
+                name = name[1:]
+
+            print("#define %-40s %d" % (prefix + name, value.value))
 
 class Group(object):
     def __init__(self, parser, parent, start, count, size):



More information about the mesa-commit mailing list