On Wed, Oct 09, 2013 at 10:29:53AM +0200, Alexander Graf wrote:
> 
> 
> Am 09.10.2013 um 07:59 schrieb Paul Mackerras <pau...@samba.org>:
> 
> > On Wed, Oct 09, 2013 at 01:46:29AM +0200, Alexander Graf wrote:
> >> 
> >> 
> >> Am 09.10.2013 um 01:31 schrieb Paul Mackerras <pau...@samba.org>:
> >> 
> >>> True, until we get to POWER8 with its split little-endian support,
> >>> where instructions and data can have different endianness...
> >> 
> >> How exactly does that work?
> > 
> > They added an extra MSR bit called SLE which enables the split-endian
> > mode.  It's bit 5 (IBM numbering).  For backwards compatibility, the
> > LE bit controls instruction endianness, and data endianness depends on
> > LE ^ SLE, that is, with SLE = 0 things work as before.  With SLE=1 and
> > LE=0 you get little-endian data and big-endian instructions, and vice
> > versa with SLE=1 and LE=1.
> 
> So ld32 should only honor LE and get_last_inst only looks at SLE and swaps 
> even the vcpu cached version if it's set, no?

Not exactly; instruction endianness depends only on MSR[LE], so
get_last_inst should not look at MSR[SLE].  I would think the vcpu
cached version should be host endian always.

Paul.
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to