panfrost: Move format stringify to decode.c
[mesa.git] / src / panfrost / pandecode / decode.c
index 04add67b82002b41de279ce82d230a769fe172b2..37226249e4b237be3d375e207f3f18515de5597d 100644 (file)
@@ -34,7 +34,6 @@
 #include "util/macros.h"
 #include "util/u_math.h"
 
-#include "pan_pretty_print.h"
 #include "midgard/disassemble.h"
 #include "bifrost/disassemble.h"
 
@@ -336,6 +335,125 @@ static const struct pandecode_flag_info sfbd_unk2_info [] = {
 extern char *replace_fragment;
 extern char *replace_vertex;
 
+#define DEFINE_CASE(name) case MALI_## name: return "MALI_" #name
+static char *pandecode_format(enum mali_format format)
+{
+        static char unk_format_str[10];
+
+        switch (format) {
+                DEFINE_CASE(ETC2_RGB8);
+                DEFINE_CASE(ETC2_R11_UNORM);
+                DEFINE_CASE(ETC2_RGBA8);
+                DEFINE_CASE(ETC2_RG11_UNORM);
+                DEFINE_CASE(ETC2_R11_SNORM);
+                DEFINE_CASE(ETC2_RG11_SNORM);
+                DEFINE_CASE(ETC2_RGB8A1);
+                DEFINE_CASE(NXR);
+                DEFINE_CASE(BC1_UNORM);
+                DEFINE_CASE(BC2_UNORM);
+                DEFINE_CASE(BC3_UNORM);
+                DEFINE_CASE(BC4_UNORM);
+                DEFINE_CASE(BC4_SNORM);
+                DEFINE_CASE(BC5_UNORM);
+                DEFINE_CASE(BC5_SNORM);
+                DEFINE_CASE(BC6H_UF16);
+                DEFINE_CASE(BC6H_SF16);
+                DEFINE_CASE(BC7_UNORM);
+                DEFINE_CASE(ASTC_3D_LDR);
+                DEFINE_CASE(ASTC_3D_HDR);
+                DEFINE_CASE(ASTC_2D_LDR);
+                DEFINE_CASE(ASTC_2D_HDR);
+                DEFINE_CASE(RGB565);
+                DEFINE_CASE(RGB5_X1_UNORM);
+                DEFINE_CASE(RGB5_A1_UNORM);
+                DEFINE_CASE(RGB10_A2_UNORM);
+                DEFINE_CASE(RGB10_A2_SNORM);
+                DEFINE_CASE(RGB10_A2UI);
+                DEFINE_CASE(RGB10_A2I);
+                DEFINE_CASE(RGB332_UNORM);
+                DEFINE_CASE(RGB233_UNORM);
+                DEFINE_CASE(Z24X8_UNORM);
+                DEFINE_CASE(R32_FIXED);
+                DEFINE_CASE(RG32_FIXED);
+                DEFINE_CASE(RGB32_FIXED);
+                DEFINE_CASE(RGBA32_FIXED);
+                DEFINE_CASE(R11F_G11F_B10F);
+                DEFINE_CASE(R9F_G9F_B9F_E5F);
+                DEFINE_CASE(VARYING_POS);
+                DEFINE_CASE(VARYING_DISCARD);
+
+                DEFINE_CASE(R8_SNORM);
+                DEFINE_CASE(R16_SNORM);
+                DEFINE_CASE(R32_SNORM);
+                DEFINE_CASE(RG8_SNORM);
+                DEFINE_CASE(RG16_SNORM);
+                DEFINE_CASE(RG32_SNORM);
+                DEFINE_CASE(RGB8_SNORM);
+                DEFINE_CASE(RGB16_SNORM);
+                DEFINE_CASE(RGB32_SNORM);
+                DEFINE_CASE(RGBA8_SNORM);
+                DEFINE_CASE(RGBA16_SNORM);
+                DEFINE_CASE(RGBA32_SNORM);
+
+                DEFINE_CASE(R8UI);
+                DEFINE_CASE(R16UI);
+                DEFINE_CASE(R32UI);
+                DEFINE_CASE(RG8UI);
+                DEFINE_CASE(RG16UI);
+                DEFINE_CASE(RG32UI);
+                DEFINE_CASE(RGB8UI);
+                DEFINE_CASE(RGB16UI);
+                DEFINE_CASE(RGB32UI);
+                DEFINE_CASE(RGBA8UI);
+                DEFINE_CASE(RGBA16UI);
+                DEFINE_CASE(RGBA32UI);
+
+                DEFINE_CASE(R8_UNORM);
+                DEFINE_CASE(R16_UNORM);
+                DEFINE_CASE(R32_UNORM);
+                DEFINE_CASE(R32F);
+                DEFINE_CASE(RG8_UNORM);
+                DEFINE_CASE(RG16_UNORM);
+                DEFINE_CASE(RG32_UNORM);
+                DEFINE_CASE(RG32F);
+                DEFINE_CASE(RGB8_UNORM);
+                DEFINE_CASE(RGB16_UNORM);
+                DEFINE_CASE(RGB32_UNORM);
+                DEFINE_CASE(RGB32F);
+                DEFINE_CASE(RGBA4_UNORM);
+                DEFINE_CASE(RGBA8_UNORM);
+                DEFINE_CASE(RGBA16_UNORM);
+                DEFINE_CASE(RGBA32_UNORM);
+                DEFINE_CASE(RGBA32F);
+
+                DEFINE_CASE(R8I);
+                DEFINE_CASE(R16I);
+                DEFINE_CASE(R32I);
+                DEFINE_CASE(RG8I);
+                DEFINE_CASE(R16F);
+                DEFINE_CASE(RG16I);
+                DEFINE_CASE(RG32I);
+                DEFINE_CASE(RG16F);
+                DEFINE_CASE(RGB8I);
+                DEFINE_CASE(RGB16I);
+                DEFINE_CASE(RGB32I);
+                DEFINE_CASE(RGB16F);
+                DEFINE_CASE(RGBA8I);
+                DEFINE_CASE(RGBA16I);
+                DEFINE_CASE(RGBA32I);
+                DEFINE_CASE(RGBA16F);
+
+                DEFINE_CASE(RGBA4);
+                DEFINE_CASE(RGBA8_2);
+                DEFINE_CASE(RGB10_A2_2);
+        default:
+                snprintf(unk_format_str, sizeof(unk_format_str), "MALI_0x%02x", format);
+                return unk_format_str;
+        }
+}
+
+#undef DEFINE_CASE
+
 static char *
 pandecode_job_type(enum mali_job_type type)
 {