================
@@ -27,6 +27,8 @@
 extern "C" {
 #endif
 
+#if !defined(__CUDA_ARCH__)
+
----------------
Artem-B wrote:

I'm actually wondering if the header needs `__has_builtin()`... They are coming 
from the same compiler, and, if they are missing, they are declared in terms of 
`__builtin*()` functions. 

Looking at their definitions, it appears that those builtins are defined when 
we're targeting windows:
https://github.com/llvm/llvm-project/blob/79261d4aab4f7a0f56f5ea32a5ac06241c5cd94a/clang/include/clang/Basic/BuiltinsARM.def#L212-L220

If we have to define them on non-windows targets anyways, perhaps a better fix 
is to let clang define them everywhere, and avoid this special case in the 
headers.

@compnerd -- do you recall what's the story with these non-builtin builtins 
here?
They were added specifically for MS targets in 
https://github.com/llvm/llvm-project/commit/4bddd9d400aa75de8961a4e6c5e3f387302534e8

But five years later,  @Bigcheese added these wrappers in the header:
https://github.com/llvm/llvm-project/commit/16af23fae8ad2949048e0fc34cf9114dfbe4742a



https://github.com/llvm/llvm-project/pull/128222
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to