Hervé Poussineau <hpous...@reactos.org> writes:

> When only one of them is changed, this means some "interesting" things 
> can happen. For example, in [1]:
> "When PowerPC little-endian is in effect but before system's 
> little-endian is in effect, the address munge becomes effective. If we 
> need to access system endian port (byte) address, say 0x80000092, the 
> program needs to issue 0x80000095 instead, to compensate (unmunge) for 
> the effect of PowerPC address modification."
>
> Those will be required for QEMU to be able to run BeOS, AIX, or Windows 
> NT or PowerPC PReP.
>
> In the light of this, I think there should only be one endianness for 
> all memory accesses (which could be changed at runtime),

We already do this, it's "host native endian".

> and all 
> bridges/devices should ask for "same endianness as parent" or "reverse 
> endianness as parent", but not for big, little, or native endianness.

I/O doesn't propagate so there's no way to say something like this.
That's the fundamental problem IMHO.

Regards,

Anthony Liguori

>
> Regards,
>
> Hervé
>
> [1] ftp://ftp.software.ibm.com/rs6000/technology/spec/endian.ps)

Reply via email to