On 02/16/2012 06:16 PM, Andrew Lutomirski wrote:
Is there really no syscall that cares about endianness?
Even if it ends up working, forcing syscall arguments to have a
particular endianness seems like a bad decision, especially if anyone
ever wants to make a 64-bit BPF implementation. (Or if any
architecture adds 128-bit syscall arguments to a future syscall
namespace or whatever it's called. x86-64 has 128-bit xmm
registers...)
Not to mention that the reshuffling code will add totally unnecessary
cost to the normal operation. Either way, Indan has it backwards ... it
*is* one field, the fact that two operations is needed to access it is a
function of the underlying byte code, and even if the byte code can't
support it, a JIT could merge adjacent operations if 64-bit operations
are possible -- or we could (and arguably should) add 64-bit opcodes in
the future for efficiency.
-hpa
--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.