Correct generating extensions list for compiler

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
This commit is contained in:
Filip Hazubski
2020-12-03 12:50:07 +00:00
committed by Compute-Runtime-Automation
parent 79d4af28de
commit 23d4967f79
4 changed files with 56 additions and 42 deletions

View File

@@ -14,15 +14,23 @@ namespace NEO {
const std::string clStdOptionName = "-cl-std=CL";
bool requiresOpenClCFeatures(const std::string &compileOptions) {
uint32_t getMajorVersion(const std::string &compileOptions) {
auto clStdValuePosition = compileOptions.find(clStdOptionName);
if (clStdValuePosition == std::string::npos) {
return false;
return 0;
}
std::stringstream ss{compileOptions.c_str() + clStdValuePosition + clStdOptionName.size()};
uint32_t majorVersion;
ss >> majorVersion;
return (majorVersion >= 3);
return majorVersion;
}
bool requiresOpenClCFeatures(const std::string &compileOptions) {
return (getMajorVersion(compileOptions) >= 3);
}
bool requiresAdditionalExtensions(const std::string &compileOptions) {
return (getMajorVersion(compileOptions) == 2);
}
} // namespace NEO

View File

@@ -14,5 +14,6 @@ namespace NEO {
extern const std::string clStdOptionName;
bool requiresOpenClCFeatures(const std::string &compileOptions);
bool requiresAdditionalExtensions(const std::string &compileOptions);
} // namespace NEO