32bits specific code in do_adjust_elf_header()

Ian Lance Taylor ian@airs.com
Wed Jul 1 16:22:00 GMT 2009


Roman Divacky <rdivacky@freebsd.org> writes:

> Target_freebsd<size, big_endian>::do_adjust_elf_header()
>
> there is 32specific code that does not work on 64bit platforms
>
> this:
>
>      gold_assert(len == elfcpp::Elf_sizes<32>::ehdr_size);
>
>      elfcpp::Ehdr<32, false> ehdr(view);
>
>
> the 32 does not work on 64bit platform (ie. amd64), I believe
> it should be either 32 or 64. When I manually enter 64 there
> on amd64 gold works for me just fine.

Thanks for the report.  I think it was just dumb coding on my part.  I
committed this patch to fix it.

Ian


2009-07-01  Ian Lance Taylor  <ian@airs.com>

	* freebsd.h (Target_freebsd::do_adjust_elf_header): Use size
	instead of 32.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: foo.patch
Type: text/x-patch
Size: 904 bytes
Desc: Fix FreeBSD
URL: <https://sourceware.org/pipermail/binutils/attachments/20090701/ae91a61c/attachment.bin>


More information about the Binutils mailing list