Re: Problems with trampoline.S with 64 bit binutils

Ralf Baechle (ralf@uni-koblenz.de)
Wed, 28 Jul 1999 11:16:48 +0200


On Tue, Jul 27, 1999 at 06:31:18PM +1000, Keith Owens wrote:

> I run a version of binutils that is compiled for every valid target,
> including 64 bit machines, it is the one I use for testing cross system
> ksymoops. The presence of 64 bit support causes problems when
> compiling trampoline.S. Admittedly this is an unusual combination but
> I was hoping it was worth making trampoline 64 bit compatible, just in
> case any other users want to use binutils for cross system work.

> Extract from trampoline.s.
>
> gdt_48:
> .word 0x0800 # gdt limit = 2048, 256 GDT entries
> .long gdt_table-(0xC0000000) # gdt base = gdt (first SMP CPU)
>
> The problem is gdt_table-(0xC0000000), gdt_table-__PAGE_OFFSET in
> trampoline.S. With a 64 bit binutils, the result cannot be stored into
> a word.

Exactly the same also happens to a crosscompiler mips-irix6.5 -> i386-linux.
In that setup no 64-bit BFD was involved and the i386-linux targets were
the only ones configured. Binutils were compiled as N32 binary, so also it
cannot be a problem caused by the larger type sizes of a 64-bit host.

Ralf

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/