[LLVMdev] How to handle size_t in front ends?

Jonathan S. Shapiro shap at eros-os.com
Wed May 7 14:31:42 PDT 2008


On Wed, 2008-05-07 at 14:25 -0700, Chris Lattner wrote:
> On Wed, 7 May 2008, Jonathan S. Shapiro wrote:
> 
> >> On Wed, 2008-05-07 at 13:24 -0700, Chris Lattner wrote:
> >> Querying TargetData only works if you know the size of the pointer. :)
> 
> > In the end, the use case that concerns me is things like character
> > vectors, because of the fact that the index spans depend on the address
> > space size. I'm not clear whether it is a goal to have an IR that is
> > capable of being a neutral representation w.r.t. address space size. If
> > it *is* a goal, then I don't see how to do it without some form of
> > iIntPtr or iWord type, but I'm still very new to all this.
> 
> i64 should be big enough for this.  Just use i64.

On a 32-bit platform, doesn't one want to use i32?

That was the point that I was trying to make -- on a 32-bit platform one
wants to use i32, while on a 64-bit platform one wants to use i64. If
one is trying to generate neutral IR, there really isn't a "right"
choice here.


shap




More information about the llvm-dev mailing list