The LLVM assembly language reference manual on arrays mentions “integer” here:
The number of elements is a constant integer value; elementtype may be any type with a size.
While integer is defined as:
The integer type is a very simple type that simply specifies an arbitrary bit width for the integer type desired. Any bit width from 1 bit to 2²³-1 (about 8 million) can be specified.
Does this work as easy as it sounds? Or do I have to consider something?
When indexing a pointer using the
getelementptrinstruction, the index can be 64 bits (or whatever size). (Indexing steps that chose a particular field of a struct or vector must use ani32, however).