【发布时间】:2012-02-02 17:38:55
【问题描述】:
我已经尝试了三天将 CUDA 内核编译到 llvm IR 中,但我做不到。我已经更改了langoptions.cpp 并在构造函数中添加了CUDA=1;,但仍然clang 给了我cuda 语法的错误消息(如_synchthreads() 调用)。
我做了以下事情:
- 下载的 llvm(包括 clang)修改了 langoptions.cpp (CUDA=1; 在构造函数中),并安装它。
- 已安装 CUDA 工具包 4.1 和 CUDA SDK。
-
使用 clang 编译了一个 CUDA 示例:
clang -I${CUDA_HOME}/include -I${CUDA_SDK_INC} ~/workspace/cuda_example/mis_kernel.cu -S -emit-llvm -o ~/workspace/cuda_example/a.ll
正如我所说,它不起作用。
【问题讨论】:
标签: compiler-construction cuda llvm clang