[LLVMdev] byval in a world without pointee types

Reid Kleckner rnk at google.com
Mon Mar 9 13:23:43 PDT 2015

On Mon, Mar 9, 2015 at 12:58 PM, David Blaikie <dblaikie at gmail.com> wrote:

> On Mon, Mar 9, 2015 at 12:38 PM, Reid Kleckner <rnk at google.com> wrote:
>> If we're keeping types on GEP,
> You mean rather than just dropping gep entirely & doing manual pointer
> arithmetic? (& moving inbounds to an attribute on pointer addition, I
> guess?)

Yep. If we're keeping the GEP sugar to say, "hey this pointer arithmetic is
actually trying to access field #4", then we should keep the allocation
sugar that says "these 4 bytes are (usually) an i32."

then IMO we should keep them on allocas and globals. It keeps the IR human
>> readable.
> & what of byval, then? Do you agree with Chandler's argument from analogy
> between byval, alloca, and globals?
> (oh, and I should look at inalloca a bit too - it looks like it uses the getByValTypeAlignment
> too... )

byval and inalloca are edge cases where we can afford to sacrifice some
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150309/95b6d1f2/attachment.html>

More information about the llvm-dev mailing list