bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gold/12934] New: Multilib gold mixes up 32 and 64 bit when relinkin


From: zub at linux dot fjfi.cvut.cz
Subject: [Bug gold/12934] New: Multilib gold mixes up 32 and 64 bit when relinking empty lib
Date: Sun, 26 Jun 2011 14:54:32 +0000

http://sourceware.org/bugzilla/show_bug.cgi?id=12934

           Summary: Multilib gold mixes up 32 and 64 bit when relinking
                    empty lib
           Product: binutils
           Version: 2.22 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gold
        AssignedTo: address@hidden
        ReportedBy: address@hidden
              Host: x86_64-linux-gnu
            Target: x86_64-linux-gnu multilib


Created attachment 5821
  --> http://sourceware.org/bugzilla/attachment.cgi?id=5821
Test showing the relink with ld.bfd and ld.gold.

Using gold on x86_64 with -m elf_i386 produces an ELF64 object when used like
this:

# create an empty static lib
ar rc empty.a

# relink with gold
ld.gold -m elf_i386 -r -o relinked-gold.o empty.a

file relinked-gold.o
relinked-gold.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not
stripped

while the output should be an ELF32 object.

With ld.bfd the output is as expected (ELF32 object). Reproducible with 2.21
and with cvs HEAD.

As soon as any non-empty ELF32 object is added to the invocation of gold the
result is correct (ELF32).

While this is a strange usecase, it appears in real world - I run into it when
building linux kernel for x86 on x86_64.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]