MCPcopy Create free account
hub / github.com/ROCm/clr / getValueFromIsaMeta

Function getValueFromIsaMeta

rocclr/device/devkernel.cpp:61–87  ·  view source on GitHub ↗

================================================================================================

Source from the content-addressed store, hash-verified

59
60// ================================================================================================
61bool getValueFromIsaMeta(const std::string& isa, const char* key, std::string& retValue) {
62 amd_comgr_metadata_node_t isaMeta;
63
64 amd_comgr_status_t status = amd::Comgr::get_isa_metadata(isa.c_str(), &isaMeta);
65
66 if (status != AMD_COMGR_STATUS_SUCCESS) {
67 ClPrint(amd::LOG_ERROR, amd::LOG_INIT, "getIsaMeta(%s) failed!", isa.c_str());
68 return false;
69 }
70
71 amd_comgr_metadata_node_t valMeta;
72 size_t size = 0;
73 status = amd::Comgr::metadata_lookup(isaMeta, key, &valMeta);
74 if (status == AMD_COMGR_STATUS_SUCCESS) {
75 status = amd::Comgr::get_metadata_string(valMeta, &size, NULL);
76 }
77 if (status == AMD_COMGR_STATUS_SUCCESS) {
78 retValue.resize(size - 1);
79 status = amd::Comgr::get_metadata_string(valMeta, &size, &(retValue[0]));
80 }
81
82 if (status == AMD_COMGR_STATUS_SUCCESS) {
83 status = amd::Comgr::destroy_metadata(valMeta);
84 }
85 amd::Comgr::destroy_metadata(isaMeta);
86 return (status == AMD_COMGR_STATUS_SUCCESS) ? true : false;
87}
88
89// ================================================================================================
90static amd_comgr_status_t populateArgs(const amd_comgr_metadata_node_t key,

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected