[LLVMdev] 32-bit indexes

Jon Harrop jon at ffconsultancy.com
Tue Dec 4 07:46:26 PST 2007

On Tuesday 04 December 2007 15:26, Duncan Sands wrote:
> Hi Jon,
> > I notice that, even though I'm on 64-bit, many indexes are required by
> > LLVM to be 32-bit integers. This won't be too important for the next few
> > years except, I think, for the case of indexing large mmapped files which
> > could already require more than 32-bits.
> >
> > Am I right and is this on the todo list? What are 32-bit integers doing
> > in the 64-bit version of LLVM anyway?
> array indices can be 32 bit or 64 bit.

But array lengths must be 32-bit?

I've just started using arrays here so maybe I'm doing something wrong but 
attempting to allocate an array with a 64-bit length gives the error:

bench: Instructions.cpp:650: llvm::Value* getAISize(llvm::Value*): Assertion 
`Amt->getType() == Type::Int32Ty && "Malloc/Allocation array size is not a 
32-bit integer!"' failed.

Dr Jon D Harrop, Flying Frog Consultancy Ltd.

More information about the llvm-dev mailing list