[PATCH 4/8] bootwrapper: help for 64 bit cpus
Benjamin Herrenschmidt
benh at kernel.crashing.org
Thu Apr 12 18:49:49 EST 2007
On Thu, 2007-04-12 at 09:43 +0200, Segher Boessenkool wrote:
> > + /* We are in 64-bit mode. This program must run in 32 bit
> > + * mode. Assume we are actually running somewhere in the
> > + * low 32 bits of the address space, so we can just turn
> > + * off MSR[SF] which is bit 0.
> > + */
> > + .machine push
> > + .machine "ppc64"
> > + rldicl r0,r0,0,1
> > + sync
> > + mtmsrd r0
> > + isync
> > + .machine pop
>
> I'm not sure this actually works on all CPUs --
> aren't you supposed to use rfid for this?
Not for 32/64 bits switches afaik... as long as your PC is known to
fit in 32 bits, you don't generate an implicit branch.
Ben.
More information about the Linuxppc-dev
mailing list