[llvm-dev] Missing TargetPrefix for NVVM intrinsics

Justin Bogner via llvm-dev llvm-dev at lists.llvm.org
Fri Jul 1 12:01:20 PDT 2016


I noticed that the intrinsics in IntrinsicsNVVM don't specify a
TargetPrefix. This seems like a simple omission, so I was going to
simply throw a `let TargetPrefix = "nvvm" ` block around them, but this
doesn't quite work.

There seem to be three prefixes that are used in this file. About 900
are int_nvvm_*, 30 are int_ptx_*, and 1 is int_cuda. It isn't clear to
me if this inconsistency is intentional or warranted - should these all
be named int_nvvm_*? Is there a good reason to differentiate int_ptx_*?
Why does __syncthreads map to int_cuda_syncthreads, rather than

I'm probably going to go ahead and add the TargetPrefix to the nvvm
intrinsics, but I'm not familiar enough with NVPTX to know what to do
with the others.

-- Justin

More information about the llvm-dev mailing list