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
[ROCm/clr commit: 37849a0726]
Este commit está contenido en:
cometido por
Maneesh Gupta
padre
6fb6b30136
commit
d2cae2aa50
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -435,9 +435,6 @@ class Program : public amd::HeapObject {
|
||||
const amd_comgr_data_kind_t dataKind, const std::string& outFileName,
|
||||
char* outBinary[] = nullptr, size_t* outSize = nullptr);
|
||||
|
||||
//! Set the OCL language
|
||||
void setLanguage(const char* clStd, amd_comgr_language_t* langver);
|
||||
|
||||
//! Create code object and add it into the data set
|
||||
amd_comgr_status_t addCodeObjData(const char *source,
|
||||
const size_t size, const amd_comgr_data_kind_t type,
|
||||
|
||||
Referencia en una nueva incidencia
Block a user