[parisc-linux] Non-bootable kernel problems
Alan Modra
alan@linuxcare.com.au
Fri, 14 Jul 2000 10:44:27 +1000 (EST)
On 13 Jul 2000, David Huggins-Daines wrote:
> Okay, this is my final word on this for today, I promise that if I
> send any more mail on it, it will include a patch :-)
Nice bit of debugging, David. Have a look in
gcc/config/pa/pa.c:output_global_address
/* How bogus. The compiler is apparently responsible for
rounding the constant if it uses an LR field selector.
The linker and/or assembler seem a better place since
they have to do this kind of thing already.
If we fail to do this, HP's optimizing linker may eliminate
an addil, but not update the ldw/stw/ldo instruction that
uses the result of the addil. */
if (round_constant)
offset = ((offset + 0x1000) & ~0x1fff);
Zap these two lines, and I think the problem will go away.
Alan Modra
--
Linuxcare. Support for the Revolution.