[clang] [Clang] Add __has_target_builtin macro (PR #126324)
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 11 06:05:44 PST 2025
================
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 -fopenmp -triple=spirv64 -fopenmp-is-target-device \
+// RUN: -aux-triple x86_64-linux-unknown -E %s | FileCheck -implicit-check-not="{{BAD|DOESNT}}" %s
+
+// RUN: %clang_cc1 -fopenmp -triple=nvptx64 -fopenmp-is-target-device \
+// RUN: -aux-triple x86_64-linux-unknown -E %s | FileCheck -implicit-check-not="{{BAD|DOESNT}}" %s
+
+// RUN: %clang_cc1 -fopenmp -triple=amdgcn-amd-amdhsa -fopenmp-is-target-device \
+// RUN: -aux-triple x86_64-linux-unknown -E %s | FileCheck -implicit-check-not="{{BAD|DOESNT}}" %s
+
+// RUN: %clang_cc1 -fopenmp -triple=aarch64 -fopenmp-is-target-device \
+// RUN: -aux-triple x86_64-linux-unknown -E %s | FileCheck -implicit-check-not="{{BAD|DOESNT}}" %s
+
+// RUN: %clang_cc1 -triple=aarch64 -E %s | FileCheck -check-prefix=CHECK-NOTOFFLOAD -implicit-check-not="{{GOOD|HAS|BAD}}" %s
+
+// CHECK: GOOD
+
+// CHECK-NOTOFFLOAD: DOESNT
+#ifdef __has_target_builtin
+ HAS
----------------
AaronBallman wrote:
You should probably check for `HAS` explicitly.
https://github.com/llvm/llvm-project/pull/126324
More information about the cfe-commits
mailing list