[Libclc-dev] [PATCH v3 1/1] R600: Add new intrinsic to read work dimensions

Jan Vesely jan.vesely at rutgers.edu
Thu Aug 7 09:01:00 PDT 2014


On Wed, 2014-08-06 at 15:21 -0700, Matt Arsenault wrote:
> On 08/06/2014 03:08 PM, Jan Vesely wrote:
> > +  case Intrinsic::r600_read_workdim: {
> > +    const size_t arg_size = DAG.getMachineFunction().getFunction()->arg_size();
> arg_size() returns the number of arguments, not their actual size. You 
> can't assume every argument is 4 bytes. There could be larger types, 
> vectors, or structs

ah, right. I guess I'll have to repeat most of the argument magic from
clover/llvm/invocation.cpp

> > +    return LowerParameter(DAG, VT, VT, DL, DAG.getEntryNode(), 36 + (arg_size * 4), false);
> > +  }
> 

-- 
Jan Vesely <jan.vesely at rutgers.edu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/libclc-dev/attachments/20140807/61ff9d0a/attachment.sig>


More information about the Libclc-dev mailing list