[LLVMdev] NVPTX annotation metadata emission

Justin Holewinski jholewinski at nvidia.com
Mon May 7 07:05:38 PDT 2012


This new metadata format is currently optional.  The old ptx_kernel calling convention should still work.

The only thing you should have to change when converting from PTX -> NVPTX is the address space map.  The calling conventions and intrinsics should be compatible with both.

> -----Original Message-----
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu]
> On Behalf Of Alberto Magni
> Sent: Monday, May 07, 2012 6:09 AM
> To: LLVM Developers Mailing List; clang-dev Developers
> Subject: [LLVMdev] NVPTX annotation metadata emission
> 
> Hi everybody,
> 
> I have noticed that the new NVPTX backend requires new metadata to
> identify the kernels in the module:
> 
> define void @metadata_kernel(float* %a) {
>   ret void
> }
> 
> 
> !nvvm.annotations = !{!1}
> !1 = metadata !{void (float*)* @metadata_kernel, metadata !"kernel", i32 1}
> 
> 
> Is clang going to support the emission of this metadata soon ? Or do I have to
> write it on my own ? :)
> 
> Thanks,
> Alberto

-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------




More information about the llvm-dev mailing list