gdb and binutils branch master updated. 422f1c65c9e9d30a7e82d136b2d4c6cd901f0245

amodra@sourceware.org amodra@sourceware.org
Tue Dec 23 13:07:00 GMT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, master has been updated
       via  422f1c65c9e9d30a7e82d136b2d4c6cd901f0245 (commit)
       via  12b2843a6bb12292d8e36d8df22c788a3c91cb2f (commit)
       via  4cc2bf08a4e18aa2009e9d4f1694a800eacbee17 (commit)
       via  cd8e2bcf0d51e91ab8da72ec63048790e3720b03 (commit)
       via  18d6a79d3527acd718cc8acd9395d1bf4cc4ce0a (commit)
      from  175a3e5098a30af882cfe28d3351b6d882a1456b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=422f1c65c9e9d30a7e82d136b2d4c6cd901f0245

commit 422f1c65c9e9d30a7e82d136b2d4c6cd901f0245
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Dec 22 11:11:50 2014 +1030

    Report an error for script multiply defined symbols
    
    or maybe not just yet, but this is better than a FIXME.
    
    	* ldexp.c (update_definedness): Return false if script symbol is
    	redefining a strong symbol in an object.
    	(exp_fold_tree_1 <etree_assign>): Set up for reporting a multiple
    	definition error, but for now leave disabled.

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=12b2843a6bb12292d8e36d8df22c788a3c91cb2f

commit 12b2843a6bb12292d8e36d8df22c788a3c91cb2f
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Dec 23 19:07:23 2014 +1030

    Use a symbol flag bit to mark linker defined symbols
    
    Trying to use the SEC_LINKER_CREATED section flag to determine whether
    a symbol is linker defined fails to work on targets like alpha that
    define special SEC_COMMON sections.  These might contain symbols that
    originated in an object file.
    
    include/
    	* bfdlink.h (struct bfd_link_hash_entry): Comment non_ir_ref.  Add
    	linker_def.
    bfd/
    	* elflink.c (_bfd_elf_define_linkage_sym): Set linker_def.
    	* linker.c (_bfd_generic_link_add_one_symbol): Clear linker_def
    	for CDEF, DEF, DEFW, COM.
    ld/
    	* ldexp.c (exp_fold_tree_1 <etree_provide>): Test linker_def.
    ld/testsuite/
    	* ld-powerpc/sdabase.s,
    	* ld-powerpc/sdabase.t,
    	* ld-powerpc/sdabase.d: New test.
    	* ld-powerpc/sdabase2.t,
    	* ld-powerpc/sdabase2.d: New test.
    	* ld-powerpc/powerpc.exp: Run them.

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4cc2bf08a4e18aa2009e9d4f1694a800eacbee17

commit 4cc2bf08a4e18aa2009e9d4f1694a800eacbee17
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Dec 22 10:49:23 2014 +1030

    Don't PROVIDE over top of common symbols
    
    This:
      int end[100000];
      int main(void) { end[99999] = 0; return 0; }
    should not segfault.
    
    ld/
    	* ldexp.c (exp_fold_tree_1 <etree_provide>): Leave bfd_link_hash_common
    	symbols alone.
    ld/testsuite/
    	* ld-elf/endsym.s, *ld-elf/endsym.d: New test.

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=cd8e2bcf0d51e91ab8da72ec63048790e3720b03

commit cd8e2bcf0d51e91ab8da72ec63048790e3720b03
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Dec 22 14:43:49 2014 +1030

    Correct logic for "defined by object"
    
    The old code missed testing bfd_link_hash_undefweak, and wrongly
    excluded bfd_link_hash_common symbols.  It is also clearer to invert
    the set of enum bfd_link_hash_type values tested.
    bfd_link_hash_indirect and bfd_link_hash_warning will never appear
    here.
    
    	* ldexp.c (update_definedness): Correct logic setting by_object.

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=18d6a79d3527acd718cc8acd9395d1bf4cc4ce0a

commit 18d6a79d3527acd718cc8acd9395d1bf4cc4ce0a
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Dec 22 10:45:13 2014 +1030

    Move support code for linker script DEFINED to ldexp.c
    
    This moves support code for DEFINED to ldexp.c where it is used,
    losing the lang_ prefix on identifiers.  Two new functions are needed
    to initialize and clean up to hash table, but other than that there
    are no functional changes here.
    
    	* ldexp.c (struct definedness_hash_entry, definedness_table)
    	(definedness_newfunc, symbol_defined, update_definedness): Move
    	and rename from..
    	* ldlang.h (struct lang_definedness_hash_entry): ..here,..
    	* ldlang.c (lang_definedness_table, lang_definedness_newfunc)
    	(lang_symbol_defined, lang_update_definedness): ..and here.
    	* ldexp.c (ldexp_init, ldexp_finish): New functions, extracted from..
    	* ldlang.c (lang_init, lang_finish): ..here.
    	* ldexp.h (ldexp_init, ldexp_finish): Declare.
    	* ldlang.h (lang_symbol_defined, lang_update_definedness): Delete.
    	* ldmain.c (main): Call ldexp_init and ldexp_finish.

-----------------------------------------------------------------------

Summary of changes:
 bfd/ChangeLog                       |    6 ++
 bfd/elflink.c                       |    1 +
 bfd/linker.c                        |    2 +
 include/ChangeLog                   |    5 +
 include/bfdlink.h                   |    6 ++
 ld/ChangeLog                        |   34 ++++++++
 ld/ldexp.c                          |  145 ++++++++++++++++++++++++++++++-----
 ld/ldexp.h                          |    2 +
 ld/ldlang.c                         |   71 -----------------
 ld/ldlang.h                         |   15 ----
 ld/ldmain.c                         |    2 +
 ld/testsuite/ChangeLog              |   13 +++
 ld/testsuite/ld-elf/endsym.d        |   13 +++
 ld/testsuite/ld-elf/endsym.s        |    2 +
 ld/testsuite/ld-powerpc/powerpc.exp |    2 +
 ld/testsuite/ld-powerpc/sdabase.d   |   10 +++
 ld/testsuite/ld-powerpc/sdabase.s   |    9 ++
 ld/testsuite/ld-powerpc/sdabase.t   |    6 ++
 ld/testsuite/ld-powerpc/sdabase2.d  |   10 +++
 ld/testsuite/ld-powerpc/sdabase2.t  |    6 ++
 20 files changed, 254 insertions(+), 106 deletions(-)
 create mode 100644 ld/testsuite/ld-elf/endsym.d
 create mode 100644 ld/testsuite/ld-elf/endsym.s
 create mode 100644 ld/testsuite/ld-powerpc/sdabase.d
 create mode 100644 ld/testsuite/ld-powerpc/sdabase.s
 create mode 100644 ld/testsuite/ld-powerpc/sdabase.t
 create mode 100644 ld/testsuite/ld-powerpc/sdabase2.d
 create mode 100644 ld/testsuite/ld-powerpc/sdabase2.t


hooks/post-receive
-- 
gdb and binutils



More information about the Binutils-cvs mailing list