Mesa (master): turnip: Fix GCC compiles.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sat Mar 16 14:39:04 UTC 2019


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

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Wed Mar 13 00:07:02 2019 +0100

turnip: Fix GCC compiles.

Apparently GCC does not consider static const variables to be
integer constants, and hence the array size and the static assert
result in compile failures.

Fixes: 4b9f967cd1a "turnip: add a more complete format table"
Reviewed-by: Eric Engestrom <eric at engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg at chromium.org>

---

 src/freedreno/vulkan/tu_formats.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/src/freedreno/vulkan/tu_formats.c b/src/freedreno/vulkan/tu_formats.c
index 8df568b476c..537b59d25e1 100644
--- a/src/freedreno/vulkan/tu_formats.c
+++ b/src/freedreno/vulkan/tu_formats.c
@@ -45,9 +45,7 @@
 #define TU_FORMAT_TABLE(var)                                                 \
    static const VkFormat var##_first = TU_FORMAT_TABLE_FIRST;                \
    static const VkFormat var##_last = TU_FORMAT_TABLE_LAST;                  \
-   static const size_t var##_count =                                         \
-      TU_FORMAT_TABLE_LAST - TU_FORMAT_TABLE_FIRST + 1;                      \
-   static const struct tu_native_format var[var##_count]
+   static const struct tu_native_format var[TU_FORMAT_TABLE_LAST - TU_FORMAT_TABLE_FIRST + 1]
 #undef TU_FORMAT_TABLE_FIRST
 #undef TU_FORMAT_TABLE_LAST
 
@@ -321,9 +319,8 @@ tu6_get_native_format(VkFormat format)
 {
    const struct tu_native_format *fmt = NULL;
 
-   static_assert(tu6_format_table0_first == 0, "");
-   if (format <= tu6_format_table0_last)
-      fmt = &tu6_format_table0[format];
+   if (format >= tu6_format_table0_first && format <= tu6_format_table0_last)
+      fmt = &tu6_format_table0[format - tu6_format_table0_first];
 
    return (fmt && fmt->present) ? fmt : NULL;
 }




More information about the mesa-commit mailing list