aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/Targets/AMDGPU.cpp
diff options
context:
space:
mode:
authorStanislav Mekhanoshin <rampitec@users.noreply.github.com>2024-07-09 14:25:58 -0700
committerGitHub <noreply@github.com>2024-07-09 14:25:58 -0700
commitf363e30f15ef274f94dba53a13d73998066a0148 (patch)
tree8900c32b2b4b5caae51f827f8ae3fe81f6838b0d /clang/lib/Basic/Targets/AMDGPU.cpp
parentaf21bc19172410f29606cac82a96c33d6710fe38 (diff)
downloadllvm-f363e30f15ef274f94dba53a13d73998066a0148.zip
llvm-f363e30f15ef274f94dba53a13d73998066a0148.tar.gz
llvm-f363e30f15ef274f94dba53a13d73998066a0148.tar.bz2
[AMDGPU] Report error in clang if wave32 is requested where unsupported (#97633)
Diffstat (limited to 'clang/lib/Basic/Targets/AMDGPU.cpp')
-rw-r--r--clang/lib/Basic/Targets/AMDGPU.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/clang/lib/Basic/Targets/AMDGPU.cpp b/clang/lib/Basic/Targets/AMDGPU.cpp
index cc7be64..3b748d0 100644
--- a/clang/lib/Basic/Targets/AMDGPU.cpp
+++ b/clang/lib/Basic/Targets/AMDGPU.cpp
@@ -187,9 +187,15 @@ bool AMDGPUTargetInfo::initFeatureMap(
return false;
// TODO: Should move this logic into TargetParser
- std::string ErrorMsg;
- if (!insertWaveSizeFeature(CPU, getTriple(), Features, ErrorMsg)) {
- Diags.Report(diag::err_invalid_feature_combination) << ErrorMsg;
+ auto HasError = insertWaveSizeFeature(CPU, getTriple(), Features);
+ switch (HasError.first) {
+ default:
+ break;
+ case llvm::AMDGPU::INVALID_FEATURE_COMBINATION:
+ Diags.Report(diag::err_invalid_feature_combination) << HasError.second;
+ return false;
+ case llvm::AMDGPU::UNSUPPORTED_TARGET_FEATURE:
+ Diags.Report(diag::err_opt_not_valid_on_target) << HasError.second;
return false;
}