[Top][All Lists]

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

[Bug gold/14533] large (88M) ICC compiled .obj files inside .a archive c

From: ccoutant at google dot com
Subject: [Bug gold/14533] large (88M) ICC compiled .obj files inside .a archive confuse / error the gold linker
Date: Fri, 31 Aug 2012 18:18:30 +0000


--- Comment #7 from Cary Coutant <ccoutant at google dot com> 2012-08-31 
18:18:30 UTC ---
> If you can run readelf -SW on your file, and extract lines that match
> "66722" and "STRTAB", I think we might be able to prove that this file
> exhibits the large section table bug.

Indeed. I received your .o file (thanks!), and, according to readelf:

  [66466] <corrupt>         STRTAB          0000000000000000 27e92d2
20ad55b 00      0   0  1

  [66722] <corrupt>         RELA            0000000000000000 489b08d
000030 18   G  1 33507  8

According to the file header, section 66722 is supposed to be
.shstrtab, but section 66466 (66722 - 256) is the actual string table
section. (Readelf cannot display the section names because .shstrtab
isn't where it's supposed to be.)

Everything above section 65280 (0xff00) is offset by 256. This file is
definitely produced by a compiler that doesn't handle large section
tables correctly. Gold actually has a heuristic in place to correct
for known bad assemblers, but that only works if the .shstrtab section
is near the end of the section table, which it is not in this case.


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]