offline compiler llvm code problem

offline compiler llvm code problem

in openCL SDK 1.5using offline compiler compile CL kernel with -llvm option to generate llvm IRthen use llvm-as convert llvm IR -> bitcode will pop error: (llvm version:3.1 svn)llvm-as: hello.ll:39:9: error: expected type define x86_ocl_kernelcc void @hello(i8 addrspace(1)* nocapture %string, i8 addrspace(3)* %pLocalMem, %struct.WorkDim* %pWorkDim, i64* %pWGId, %struct.PaddedDimId* %pBaseGlbId, %struct.PaddedDimId* %pLocalIds, i64* %contextpointer, i64 %iterCount, i8* %pSpecialBuf, i64* %pCurrWI) nounwind { this kernel come from "The openCL programming book" sample code 3-1
i've tried some CL kernel, and this error always occurredand their's a bug in offline compiler windows version ,the "save LLVM..." option default filetype should be "*.ll" not "*.bc" , the offline compiler generate human readable llvm code.

6 帖子 / 0 全新

I would imagine no one at intel has tested their code with version 3.1 as 3.0 was release in December which was after the latest release of Intel's OpenCL SDK and runtime.

oh it also happend at llvm 3.0, so i upgraded llvm at once and thought it might fixed this at 3.1.

Please use llvm tools coming with Intel SDK.

i found llvm tool (llc) in SDK windows version, linux version doesn't include that tool. thanks.

-llvm flag generates a file with extension .bc, but it is a readable file just like the .ll
You may try open it in a text editor and you will get the textual llvm code.

We will consider your suggestion of changing the extension type to *.ll instead of *.bc.