[clang] [AMDGPU] Add sema check for global_atomic_fadd_v2f16 builtin (PR #158145)

2025-09-18 Thread Tim Gu via cfe-commits
https://github.com/tcgu-amd updated https://github.com/llvm/llvm-project/pull/158145 >From 2790a7a05ab9453176a29ce7f5c3def7e4c9a1ae Mon Sep 17 00:00:00 2001 From: Tim Gu Date: Thu, 18 Sep 2025 13:03:11 -0400 Subject: [PATCH] Removed custom type checking & changed type string from __fp16 to _Fl

[clang] [AMDGPU] Add sema check for global_atomic_fadd_v2f16 builtin (PR #158145)

2025-09-13 Thread Tim Gu via cfe-commits
https://github.com/tcgu-amd created https://github.com/llvm/llvm-project/pull/158145 Addresses https://github.com/ROCm/ROCm/issues/5253. The builtin expects a vector _Float16 of length 2, but clang does not emit errors when the wrong argument types is supplied (e.g. half2). This causes the c

[clang] [AMDGPU] Add sema check for global_atomic_fadd_v2f16 builtin (PR #158145)

2025-09-13 Thread Tim Gu via cfe-commits
@@ -436,4 +440,32 @@ void SemaAMDGPU::handleAMDGPUMaxNumWorkGroupsAttr(Decl *D, addAMDGPUMaxNumWorkGroupsAttr(D, AL, AL.getArgAsExpr(0), YExpr, ZExpr); } + +bool SemaAMDGPU::checkAMDGCNAtomicFaddV2F16Type(CallExpr *TheCall) { + // Check that the pointer argument is a pointe

[clang] [AMDGPU] Add sema check for global_atomic_fadd_v2f16 builtin (PR #158145)

2025-09-12 Thread Tim Gu via cfe-commits
@@ -436,4 +440,32 @@ void SemaAMDGPU::handleAMDGPUMaxNumWorkGroupsAttr(Decl *D, addAMDGPUMaxNumWorkGroupsAttr(D, AL, AL.getArgAsExpr(0), YExpr, ZExpr); } + +bool SemaAMDGPU::checkAMDGCNAtomicFaddV2F16Type(CallExpr *TheCall) { + // Check that the pointer argument is a pointe