This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
src/bfd ChangeLog coffgen.c cofflink.c libcoff ...
- From: jbeulich at sourceware dot org
- To: binutils-cvs at sourceware dot org
- Date: 2 Nov 2011 14:53:04 -0000
- Subject: src/bfd ChangeLog coffgen.c cofflink.c libcoff ...
CVSROOT: /cvs/src
Module name: src
Changes by: jbeulich@sourceware.org 2011-11-02 14:53:04
Modified files:
bfd : ChangeLog coffgen.c cofflink.c libcoff-in.h
libcoff.h
Log message:
Building EFI binaries, particularly larger ones (like e.g. Xen does), on Linux
(where relocatable objects are in ELF format) so far led to all local (aka
static) symbols to be discarded, making debugging quite a bit more difficult
(like Linux, Xen builds an internal symbol lookup table from nm output
generated on the binary produced by an earlier linking pass). Therefore, this
patch arranges to insert all (relevant) local symbols from non-COFF objects
into the final executable's symbol table between those coming from COFF input
files and the global ones.
bfd/
2011-11-02 Jan Beulich <jbeulich@suse.com>
* coffgen.c (coff_write_alien_symbol): Make public. Add 'struct
internal_syment *' parameter. Extend 'dummy' to an array with two
elements. Set n_numaux early. Handle BSF_FILE.
(coff_write_symbols): Pass NULL as new third argument to
coff_write_alien_symbol().
* cofflink.c (_bfd_coff_final_link): Don't use COFF-specific
obj_raw_syment_count() on non-COFF input BFD. Insert local symbols
from non-COFF input BFDs.
* libcoff-in.h (coff_write_alien_symbol): Declare.
* libcoff.h (coff_write_alien_symbol): Re-generate.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/ChangeLog.diff?cvsroot=src&r1=1.5507&r2=1.5508
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/coffgen.c.diff?cvsroot=src&r1=1.82&r2=1.83
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/cofflink.c.diff?cvsroot=src&r1=1.79&r2=1.80
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/libcoff-in.h.diff?cvsroot=src&r1=1.45&r2=1.46
http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/libcoff.h.diff?cvsroot=src&r1=1.62&r2=1.63