[foreign] RFR 8218153: Read/Write of Value layout should honor declared endianness

John Rose john.r.rose at oracle.com
Fri Feb 8 19:11:01 UTC 2019


On Feb 8, 2019, at 3:07 AM, Maurizio Cimadamore <maurizio.cimadamore at oracle.com> wrote:
> 
> So it seems like invokers will need to allocate pointers carefully so as to avoid accidental errors (or accidental byte swapping) creeping in.

That's the bottom line here.  From the outside of an invoker, byte order
is irrelevant, and can safely/usefully be suppressed, maybe.

From the inside there's the question of how to spill container values
to memory when they can't be allocated to registers.  That's a specialized
process that belongs to specialized, privileged code.  (We don't want general
users messing directly with register allocations.)

For argument/return spill code the only byte order that matters is host (ABI) order.
So the external degrees of freedom (BE/LE/PE/NE) are irrelevant and hence potentiall
confusing.

— John




More information about the panama-dev mailing list