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:
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user