Author: Hardik Kumar Date: 2026-09-05T09:50:56+02:00 New Revision: 6a74483027ad46b641ba2b472e5c4429d2db56f4
URL: https://github.com/llvm/llvm-project/commit/6a74483027ad46b641ba2b472e5c4429d2db56f4 DIFF: https://github.com/llvm/llvm-project/commit/6a74483027ad46b641ba2b472e5c4429d2db56f4.diff LOG: [clang][amdgpu] resolve type mismatch warning in conditional comparison (#220526) The following warning is generated because of a mismatch in the object types. ```bash /home/xane/Documents/shallowllvm/llvm-project/clang/lib/Basic/Targets/AMDGPU.cpp: In constructor ‘clang::targets::AMDGPUTargetInfo::AMDGPUTargetInfo(const llvm::Triple&, const clang::TargetOptions&)’: /home/xane/Documents/shallowllvm/llvm-project/clang/lib/Basic/Targets/AMDGPU.cpp:200:37: warning: enumerated mismatch in conditional expression: ‘llvm::AMDGPU::ArchFeatureKind’ vs ‘llvm::AMDGPU::R600FeatureKind’ [-Wenum-compare] 200 | GPUFeatures(Triple.isAMDGCN() ? llvm::AMDGPU::FEATURE_NONE | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ 201 | : llvm::AMDGPU::getArchAttrR600(GPUKind)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [1/166] Building CXX object tools/clang/lib/CodeGen/CMakeFiles/obj.clangCodeGen.dir/CodeGenPGO.cpp.o^C ``` The type of `GpuFeatures` and return value of `getArchAttrR600()` is ultimately an `unsigned` int value. Static cast the return value of the method to `unsigned` to resolve the warning without any functional or breaking changes. Signed-off-by: Hardik Kumar <[email protected]> Added: Modified: clang/lib/Basic/Targets/AMDGPU.cpp Removed: ################################################################################ diff --git a/clang/lib/Basic/Targets/AMDGPU.cpp b/clang/lib/Basic/Targets/AMDGPU.cpp index e4f2b8f18ced5..365378186ce6d 100644 --- a/clang/lib/Basic/Targets/AMDGPU.cpp +++ b/clang/lib/Basic/Targets/AMDGPU.cpp @@ -198,8 +198,10 @@ AMDGPUTargetInfo::AMDGPUTargetInfo(const llvm::Triple &Triple, Triple.getSubArch()) : llvm::AMDGPU::parseArchAMDGCN(Opts.CPU)) : llvm::AMDGPU::parseArchR600(Opts.CPU)), - GPUFeatures(Triple.isAMDGCN() ? llvm::AMDGPU::FEATURE_NONE - : llvm::AMDGPU::getArchAttrR600(GPUKind)) { + GPUFeatures( + Triple.isAMDGCN() + ? llvm::AMDGPU::FEATURE_NONE + : static_cast<unsigned>(llvm::AMDGPU::getArchAttrR600(GPUKind))) { resetDataLayout(); AddrSpaceMap = &AMDGPUAddrSpaceMap; _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
