[PPC64] Remove another fixed address constraint
David Gibson
david at gibson.dropbear.id.au
Mon Aug 1 16:35:54 EST 2005
On Mon, Aug 01, 2005 at 08:29:29AM +0200, Olaf Hering wrote:
> On Mon, Jul 25, David Gibson wrote:
>
> > Presently the LparMap, one of the structures the kernel shares with
> > the legacy iSeries hypervisor has a fixed offset address in head.S.
> > This patch changes this so the LparMap is a normally initialized
> > structure, without fixed address. This allows us to use macros to
> > compute some of the values in the structure, which wasn't previously
> > possible because the assembler always uses signed-% which gets the
> > wrong answers for the computations in question.
> >
> > Unfortunately, a gcc bug means that doing this requires another
> > structure (hvReleaseData) to be initialized in asm instead of C, but
> > on the whole the result is cleaner than before.
>
> I think this change caused this compile error in rc4:
>
> {standard input}: Assembler messages:
> {standard input}:254: Error: value of 4000000000002080 too large for field of 4 bytes at 0000000000002108
> make[1]: *** [arch/ppc64/kernel/LparData.o] Error 1
>
> binutils-2.16.91.0.2
> gcc-4.0.2_20050727
Hrm.. definitely works here. Is this with any other patches? Can you
send the .s file? That might help be debug it.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/people/dgibson
More information about the Linuxppc64-dev
mailing list