================================================================================================
| 59 | |
| 60 | // ================================================================================================ |
| 61 | bool 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 | // ================================================================================================ |
| 90 | static amd_comgr_status_t populateArgs(const amd_comgr_metadata_node_t key, |
no outgoing calls
no test coverage detected