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

Author: Qiang Yu <[email protected]>
Date:   Wed Oct 18 18:52:23 2023 +0800

aco: add aco_is_gpu_supported

Reviewed-by: Daniel Schürmann <[email protected]>
Signed-off-by: Qiang Yu <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25631>

---

 src/amd/compiler/aco_interface.cpp | 8 ++++++++
 src/amd/compiler/aco_interface.h   | 3 +++
 2 files changed, 11 insertions(+)

diff --git a/src/amd/compiler/aco_interface.cpp 
b/src/amd/compiler/aco_interface.cpp
index 0ca22adb5ed..8b4950823e4 100644
--- a/src/amd/compiler/aco_interface.cpp
+++ b/src/amd/compiler/aco_interface.cpp
@@ -28,6 +28,7 @@
 
 #include "util/memstream.h"
 
+#include "ac_gpu_info.h"
 #include <array>
 #include <iostream>
 #include <vector>
@@ -425,3 +426,10 @@ aco_compile_ps_prolog(const struct aco_compiler_options* 
options,
    aco_compile_shader_part(options, info, args, aco::select_ps_prolog, 
(void*)pinfo, build_prolog,
                            binary, true);
 }
+
+bool
+aco_is_gpu_supported(const struct radeon_info* info)
+{
+   /* Does not support compute only cards yet. */
+   return info->gfx_level >= GFX6 && info->has_graphics;
+}
diff --git a/src/amd/compiler/aco_interface.h b/src/amd/compiler/aco_interface.h
index 8f35e18b5b0..16fc99770fd 100644
--- a/src/amd/compiler/aco_interface.h
+++ b/src/amd/compiler/aco_interface.h
@@ -37,6 +37,7 @@ struct ac_shader_config;
 struct aco_shader_info;
 struct aco_vs_prolog_info;
 struct aco_ps_epilog_info;
+struct radeon_info;
 
 struct aco_compiler_statistic_info {
    char name[32];
@@ -97,6 +98,8 @@ void aco_compile_ps_prolog(const struct aco_compiler_options* 
options,
 
 uint64_t aco_get_codegen_flags();
 
+bool aco_is_gpu_supported(const struct radeon_info* info);
+
 #ifdef __cplusplus
 }
 #endif

Reply via email to