[LLVMdev] JVM Backend
baldrick at free.fr
Sun Nov 29 04:06:18 CST 2009
> No, structs are supported. The only unsupported types at the moment
> (as far as I am aware) are things like i31 and f80.
for funky sized integers, the most important operations to support are
loads and stores, shifts and logical operations (and, or, xor). These
are the ones that the optimizers like to introduce most. The logical
operations are straightforward. Loads and stores of iN are equivalent
to using memcpy of (N+7)/8 bytes from memory to wherever you are keeping
the value (for a load), or the reverse for a store, so that's pretty easy
as well [this assumes that you set things up right so that endianness is
the same in memory and in "registers"]. Shifts are the most complicated,
but still pretty simple.
More information about the LLVMdev