diff --git a/src/panfrost/vulkan/panvk_macros.h b/src/panfrost/vulkan/panvk_macros.h index 59bdbcd75d5..0fb6b3fceb2 100644 --- a/src/panfrost/vulkan/panvk_macros.h +++ b/src/panfrost/vulkan/panvk_macros.h @@ -34,6 +34,20 @@ } \ } while (0) +#define panvk_arch_dispatch_ret(arch, name, ret, ...) \ + do { \ + switch (arch) { \ + case 6: \ + ret = panvk_arch_name(name, v6)(__VA_ARGS__); \ + break; \ + case 7: \ + ret = panvk_arch_name(name, v7)(__VA_ARGS__); \ + break; \ + default: \ + unreachable("Unsupported architecture"); \ + } \ + } while (0) + #ifdef PAN_ARCH #if PAN_ARCH == 6 #define panvk_per_arch(name) panvk_arch_name(name, v6)