From e1161d2ea7b47fc8d13114216ed02ac00b6caeba Mon Sep 17 00:00:00 2001
From: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Date: Wed, 13 Mar 2019 00:07:02 +0100
Subject: 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@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@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;
 }
-- 
cgit v1.2.3