clover: add platform supported extensions with version

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7520>
This commit is contained in:
Dave Airlie
2020-10-07 13:35:13 +10:00
parent 940e479d7d
commit b8a96199cb
3 changed files with 25 additions and 1 deletions
@@ -86,6 +86,10 @@ clover::GetPlatformInfo(cl_platform_id d_platform, cl_platform_info param,
break;
}
case CL_PLATFORM_EXTENSIONS_WITH_VERSION:
buf.as_vector<cl_name_version>() = platform.supported_extensions();
break;
default:
throw error(CL_INVALID_VALUE);
}
+20 -1
View File
@@ -45,9 +45,28 @@ platform::platform() : adaptor_range(evals(), devs) {
}
}
std::vector<cl_name_version>
platform::supported_extensions() const {
std::vector<cl_name_version> vec;
vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_icd" } );
return vec;
}
std::string
platform::supported_extensions_as_string() const {
return "cl_khr_icd";
static std::string extensions_string;
if (!extensions_string.empty())
return extensions_string;
const auto extension_list = supported_extensions();
for (const auto &extension : extension_list) {
if (!extensions_string.empty())
extensions_string += " ";
extensions_string += extension.name;
}
return extensions_string;
}
std::string
@@ -41,6 +41,7 @@ namespace clover {
operator=(const platform &platform) = delete;
std::string supported_extensions_as_string() const;
std::vector<cl_name_version> supported_extensions() const;
std::string platform_version_as_string() const;
cl_version platform_version() const;