binutils-gdb/elfcpp
Nick Clifton 3e7a7d11f1 * config/obj-elf.c (obj_elf_type): Add code to support a type of
gnu_unique_object.
        * doc/as.texinfo: Document new feature of .type directive.
        * NEWS: Mention support for gnu_unique_object symbol type.

        * common.h (STB_GNU_UNIQUE): Define.

        * NEWS: Mention the linker's support for symbols with a binding of
        STB_GNU_UNIQUE.

        * gas/elf/type.s: Add unique global symbol definition.
        * gas/elf/type.e: Add expected readelf output for global unique
        symbol.

        * elfcpp.h (enum STB): Add STB_GNU_UNIQUE.

        * readelf.c (get_symbol_binding): For Linux targeted files return
        UNIQUE for symbols with the STB_GNU_UNIQUE binding.
        * doc/binutils.texi: Document the meaning of the 'u' symbol
        binding in the output of nm and objdump --syms.

        * elf-bfd.h (struct elf_link_hash_entry): Add unique_global field.
        * elf.c (swap_out_syms): Set binding to STB_GNU_UNIQUE for symbols
        with the BSF_GNU_UNIQUE flag bit set.
        * elfcode.h (elf_slurp_symbol_table): Set the BSF_GNU_UNIQUE flag
        for symbols with STB_GNU_UNIQUE binding.
        * elflink.c (_bfd_elf_merge_symbol): Set unique_global for symbols
        with the STB_GNU_UNIQUE binding.
        (elf_link_add_object_symbols): Set the BSF_GNU_UNIQUE flag for
        symbols with STB_GNU_UNIQUE binding.  Set STB_GNU_UNIQUE for
        symbols with the unique_global field set.
        (elf_link_output_extsym): Set unique_global field for symbols with
        the STB_GNU_UNIQUE binding.
        * syms.c (struct bfd_symbol): Define BSF_GNU_UNIQUE flag bit.
        (bfd_print_symbol_vandf): Print a 'u' character for BSF_GNU_UNIQUE
        symbols.
        (bfd_decode_symclass): Return a 'u' character for BSF_GNU_UNIQUE
        symbols.
        * bfd-in2.h: Regenerate.
2009-07-23 13:00:30 +00:00
..
ChangeLog * config/obj-elf.c (obj_elf_type): Add code to support a type of 2009-07-23 13:00:30 +00:00
README
arm.h 2009-05-27 Doug Kwan <dougkwan@google.com> 2009-05-27 18:27:42 +00:00
dwarf.h elfcpp/: 2008-05-28 20:48:16 +00:00
elfcpp.h * config/obj-elf.c (obj_elf_type): Add code to support a type of 2009-07-23 13:00:30 +00:00
elfcpp_file.h * elfcpp_file.h (class Elf_file): Add large_shndx_offset_ field. 2008-04-19 18:33:19 +00:00
elfcpp_internal.h Add licensing text to every source file. 2007-09-22 21:02:10 +00:00
elfcpp_swap.h elfcpp:/ 2009-03-02 02:45:29 +00:00
i386.h From Craig Silverstein: Add more DWARF info, add some i386 comments. 2007-11-02 03:31:41 +00:00
powerpc.h 2008-06-12 David S. Miller <davem@davemloft.net> 2008-06-12 16:58:40 +00:00
sparc.h * sparc.h (EF_SPARC_EXT_MASK, EF_SPARC_32PLUS_MASK, 2008-04-16 01:56:33 +00:00
x86_64.h Remove Andrew's e-mail address. 2008-01-09 19:40:24 +00:00

README

elfcpp is a C++ library for reading and writing ELF information.  This
was written to support gold, the ELF linker, and may not be generally
useful.

elfcpp does not do file I/O.  It deals only with offsets and memory
data.

For efficiency, most accessors are templates with two arguments: the
ELF file class (32 or 64 bits) and the endianness.