[libcxx-commits] [libcxx] [libc++] Protect the libc++ implementation from CUDA SDK's `__noinline__` macro (PR #73838)

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Tue Jan 16 13:43:42 PST 2024


ldionne wrote:

I'd be OK with the suggested workaround since folks are actively escalating this with the Cuda SDK. So the whole patch could be as simple as:

```c++
#  if defined(__CUDACC__) || defined(__CUDA_ARCH__) || defined(__CUDA_LIBDEVICE__)
#    define _LIBCPP_NOINLINE __attribute__((noinline)) // LINK TO BUG REPORT
#  elif __has_attribute(__noinline__)
#    define _LIBCPP_NOINLINE __attribute__((__noinline__))
#  else
#    define _LIBCPP_NOINLINE
#  endif
```

@gribozavr Are you able to update this PR accordingly? Ideally we'd land this before we cut the LLVM 18 branch next Tuesday.

https://github.com/llvm/llvm-project/pull/73838


More information about the libcxx-commits mailing list