Я три дня пытался скомпилировать ядро CUDA в llvm IR, и я не смог этого сделать. Я изменил langoptions.cpp
и добавил CUDA=1;
в конструкторе, но все равно Clang дает мне сообщения об ошибках для синтаксиса CUDA (например, вызов _synchthreads ()).
Я сделал следующее:
- скачано llvm (включая clang), изменено langoptions.cpp (CUDA = 1;
в конструкторе) и установил его.
- установлены инструментарий CUDA 4.1 и CUDA SDK.
скомпилировал пример CUDA с использованием clang, используя:
clang -I${CUDA_HOME}/include -I${CUDA_SDK_INC}
~/workspace/cuda_example/mis_kernel.cu -S -emit-llvm -o
~/workspace/cuda_example/a.ll
и, как я уже сказал, это не работает.