* 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.
			
			
This commit is contained in:
		| @@ -1,3 +1,7 @@ | ||||
| 2009-07-23  Ulrich Drepper  <drepper@redhat.com> | ||||
|  | ||||
| 	* common.h (STB_GNU_UNIQUE): Define. | ||||
|  | ||||
| 2009-07-10  Tom Tromey  <tromey@redhat.com> | ||||
|  | ||||
| 	* dwarf2.h: Move to `..'. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| /* ELF support for BFD. | ||||
|    Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, | ||||
|    2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 | ||||
|    2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 | ||||
|    Free Software Foundation, Inc. | ||||
|  | ||||
|    Written by Fred Fish @ Cygnus Support, from information published | ||||
| @@ -555,6 +555,7 @@ | ||||
| #define STB_GLOBAL	1		/* Symbol visible outside obj */ | ||||
| #define STB_WEAK	2		/* Like globals, lower precedence */ | ||||
| #define STB_LOOS	10		/* OS-specific semantics */ | ||||
| #define STB_GNU_UNIQUE	10		/* Symbol is unique in namespace */ | ||||
| #define STB_HIOS	12		/* OS-specific semantics */ | ||||
| #define STB_LOPROC	13		/* Processor-specific semantics */ | ||||
| #define STB_HIPROC	15		/* Processor-specific semantics */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user