gold alignment for 64-bit target in 32-bit binary

Ian Lance Taylor iant@google.com
Mon Apr 21 17:13:00 GMT 2008


David Miller <davem@davemloft.net> writes:

> If you try to link for a 64-bit target in a 32-bit gold binary, the
> output views are not aligned enough so we die with a SIGBUS on
> platforms like sparc.
>
> Simple sparc test case:
>
> -------------------- test.s --------------------
> 	.text
> 	.globl _start
> _start:	nop
> -------------------- test.2 --------------------
>
> bash$ gcc -m64 -c -o test.o test.s
> bash$ ./ld-new -o test test.o
> Bus error (core dumped)
> bash$
>
> It seems things are 4-byte aligned when they need to be 8-byte
> aligned.

I haven't forgotten about this, but without access to a strict
alignment system I'm not sure how to track it down.  Can you send me a
backtrace from the bus error?

There isn't supposed to be anything in gold which is based on the host
alignment.

Ian



More information about the Binutils mailing list