SWDEV-286150 - [NFC] Refactor setLanguage method into a static function called getCOMGRLanguage
* Return the result by value and not through a pointer passed by parameter Change-Id: I8f872c95c4a330bebe299d486fb73f36660b469c
This commit is contained in:
gecommit door
Maneesh Gupta
bovenliggende
88b4b6428c
commit
37849a0726
@@ -280,31 +280,29 @@ amd_comgr_status_t Program::addCodeObjData(const char *source,
|
||||
return status;
|
||||
}
|
||||
|
||||
void Program::setLanguage(const char* clStd, amd_comgr_language_t* langver) {
|
||||
static amd_comgr_language_t getCOMGRLanguage(bool isHIP, const amd::option::Options &amdOptions) {
|
||||
|
||||
if (isHIP()) {
|
||||
if (langver != nullptr) {
|
||||
*langver = AMD_COMGR_LANGUAGE_HIP;
|
||||
}
|
||||
if (isHIP) {
|
||||
return AMD_COMGR_LANGUAGE_HIP;
|
||||
} else {
|
||||
const char* clStd = amdOptions.oVariables->CLStd;
|
||||
uint clcStd = (clStd[2] - '0') * 100 + (clStd[4] - '0') * 10;
|
||||
|
||||
if (langver != nullptr) {
|
||||
switch (clcStd) {
|
||||
case 100:
|
||||
case 110:
|
||||
case 120:
|
||||
*langver = AMD_COMGR_LANGUAGE_OPENCL_1_2;
|
||||
break;
|
||||
case 200:
|
||||
*langver = AMD_COMGR_LANGUAGE_OPENCL_2_0;
|
||||
break;
|
||||
default:
|
||||
*langver = AMD_COMGR_LANGUAGE_NONE;
|
||||
break;
|
||||
}
|
||||
switch (clcStd) {
|
||||
case 100:
|
||||
case 110:
|
||||
case 120:
|
||||
return AMD_COMGR_LANGUAGE_OPENCL_1_2;
|
||||
case 200:
|
||||
return AMD_COMGR_LANGUAGE_OPENCL_2_0;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
DevLogPrintfError("Cannot set Language version for %s \n",
|
||||
amdOptions.oVariables->CLStd);
|
||||
return AMD_COMGR_LANGUAGE_NONE;
|
||||
}
|
||||
|
||||
|
||||
@@ -348,11 +346,8 @@ bool Program::linkLLVMBitcode(const amd_comgr_data_set_t inputs,
|
||||
amd::option::Options* amdOptions, amd_comgr_data_set_t* output,
|
||||
char* binaryData[], size_t* binarySize, const bool link_dev_libs) {
|
||||
|
||||
amd_comgr_language_t langver;
|
||||
setLanguage(amdOptions->oVariables->CLStd, &langver);
|
||||
amd_comgr_language_t langver = getCOMGRLanguage(isHIP(), *amdOptions);
|
||||
if (langver == AMD_COMGR_LANGUAGE_NONE) {
|
||||
DevLogPrintfError("Cannot set Language version for %s \n",
|
||||
amdOptions->oVariables->CLStd);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -408,11 +403,8 @@ bool Program::compileToLLVMBitcode(const amd_comgr_data_set_t compileInputs,
|
||||
amd::option::Options* amdOptions,
|
||||
char* binaryData[], size_t* binarySize) {
|
||||
|
||||
amd_comgr_language_t langver;
|
||||
setLanguage(amdOptions->oVariables->CLStd, &langver);
|
||||
amd_comgr_language_t langver = getCOMGRLanguage(isHIP(), *amdOptions);
|
||||
if (langver == AMD_COMGR_LANGUAGE_NONE) {
|
||||
DevLogPrintfError("Cannot set Language version for %s \n",
|
||||
amdOptions->oVariables->CLStd);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Verwijs in nieuw issue
Block a user