Issue 86660
Summary Clang: CUDA compile with -nocudalib gives "use of undeclared identifier cudaConfigureCall"
Labels clang
Assignees
Reporter robquill
    Hi,

I am trying to compile some CUDA code without using libdevice.10.bc. To do this, I used the -nocudalib option.

Compiling the attached vecadd.cu without -nocudalib it compiles successfully:

```
$ clang++ vecadd.cu -emit-llvm -c --cuda-path=/usr/local/cuda-12.3
$
```

But compiling with -nocudalib gives this error:

```
$ clang++ vecadd.cu -emit-llvm -c --cuda-path=/usr/local/cuda-12.3 -nocudalib
vecadd.cu:69:11: error: use of undeclared identifier cudaConfigureCall
   69 |     vecAdd<<<gridSize, blockSize>>>(d_a, d_b, d_c, n);
      |           ^
1 error generated when compiling for sm_52.
$
```

My clang version is:

```
$ clang++ --version
Ubuntu clang version 19.0.0 (++20240325031437+564035edb0e6-1~exp1~20240325151556.1579)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-19/bin
```

And I'm using CUDA Toolkit 12.3.

That said, I also see this back with LLVM 14 and a range of CUDA Toolkits back to 10.1.

[vecadd.zip](https://github.com/llvm/llvm-project/files/14759006/vecadd.zip)

_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to