public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
From: jkratoch@sourceware.org
To: archer-commits@sourceware.org
Subject: [SCM]  archer-tromey-charset: Merge commit 'origin/master' into archer-tromey-charset
Date: Thu, 12 Mar 2009 20:10:00 -0000	[thread overview]
Message-ID: <20090312201052.27242.qmail@sourceware.org> (raw)

The branch, archer-tromey-charset has been updated
       via  3e1457d4769319af4e158d411ed2301a35a64a94 (commit)
       via  852c0e0d0263f85b62090507be8daa135a87a53a (commit)
       via  fca72fa5ad030093f21211e1b4394ef40ab1d0cc (commit)
       via  bd553788ac40acb65c8a0849f38266955f905814 (commit)
       via  a0ef3038786538a8d390c907e8d11953bae47bc3 (commit)
       via  ddba7e72ef21e86088399b5b9364848f9d474921 (commit)
       via  24b599131ae218b0aca33621a06043e05bfea682 (commit)
       via  398035ce19b44ec266da36255133cf3d8ffd2295 (commit)
       via  b3328989e625642287d2d9a0dbafd7f357172c9b (commit)
       via  3d1209ec9ee4547aeb4bc46af829f2c7bbcd5d2e (commit)
       via  79e74d313b4bc7c56b58b1ccfd48cf07e754dc32 (commit)
       via  9339cc18dd5700a48ae62e73dddcab789ac6f2b6 (commit)
       via  92dfc8c682f091812f76ab979cde6e13d9f5f91d (commit)
       via  734bf3302f8a087bb95c33facf93cbab88296e62 (commit)
       via  a88555d5710428614dbdade1bcddea2c7b81f071 (commit)
       via  0503f5df2489d32c57558a3fd733ab7a180b688d (commit)
       via  a3040cde74b99c348ce534d90b8f5330e88ec0ec (commit)
       via  4fe17d038a0891bdf400b17f5c01babb11e18c43 (commit)
       via  3d60ec7d687cd613e00aea316190936b9e47624d (commit)
       via  be87af029b506c0082a3e47f282e77052a368f8d (commit)
       via  bb895e00aedc40d6b47f1c76162c43cca0bf9655 (commit)
       via  c2972ffea8572552b612c7c2da82d3836b4a2c8a (commit)
       via  62c45004981d213b9fe085264e57f01d55fea73b (commit)
       via  0ed0ce6569cdb43df57173f703f5987da367625e (commit)
       via  be2e1c8d04cc278c352b05afcd2f92caad740b87 (commit)
       via  8444b262861157b6478ea024f77df2ed1ff02789 (commit)
       via  7a82cea5ae873f8b53eaf13f730a417a289a6aa9 (commit)
       via  01939d0bc5b5e377d2d2e1041336174f88d75657 (commit)
       via  ba3b27c6841ed40d7a38517348b34180797c2334 (commit)
       via  a602008d1bc4bd7ae94f48f258b42fe8b9fc6e35 (commit)
       via  7736f57ac722d86d8735aa89f71e86924ffb38cc (commit)
       via  f56e4cce499eef6d0f54e5febf00aa66f8a82f29 (commit)
       via  7028ef3bbdbc5e4a111d0b7cc780ee0c35a7292e (commit)
       via  129997da4c6c2aea81696300903da1ad47b7f48e (commit)
       via  f2f3abead03c81796832772dc2be966191b2f80c (commit)
       via  a93539b2e002585b2a1a2d32f0e2df2445fe6579 (commit)
       via  57eb800b475de56bba3f720dc7c64179f5899cec (commit)
       via  f1c4daa594919152e47c111c830393e10530443a (commit)
       via  3e5fb2e1453d9b8d09983a5a3d1d3ff203e8352a (commit)
       via  6e9407b3a655b3339a97bfeb9f79e6bf8e9a90ae (commit)
       via  a31bdfa66308b389d2a94de814afafbb4f0d9ff5 (commit)
       via  000b2df5b139714e6ec5d9fc79f1c59477b75126 (commit)
       via  8f21114a8f63389d6d516164a5a5fbd4de31e21b (commit)
       via  631a01f69c65c713332b5c5c152b583fd41cefd7 (commit)
       via  b2ec49e547711d2e267442bd571eb7253394d10f (commit)
       via  ef0744bb1590a8aad7f0b52c25f947de1e9b3e36 (commit)
       via  92f4807a51643d91c9f466fa62c1dc30c7a554ac (commit)
       via  6df02fc5bff4e11da68894137831fb27e8263d5c (commit)
       via  6ae22736c8ecbc8312af3631bd8be2ff156c3f64 (commit)
       via  4a7fe2eed71d84af81771722168df100149ebcc4 (commit)
       via  6722bb0b7991e0f20fd75883a2db654eea8438d3 (commit)
       via  a2e6917f7307db762725a77922ad8b0cf370e7ac (commit)
       via  c53b171a2083fdc3d959398d654aa2f4069b1c20 (commit)
       via  478ff543e243a47bb8934f738814ef69d9936ea5 (commit)
       via  fb597d271837a83d02703ca6fad12f9590845b3e (commit)
       via  9de9f540f0e38df29cca71eb7426e5791d1004dd (commit)
       via  a35213375f8b628f9e42fd5bc6cf67000c893248 (commit)
       via  62e5f942420bc61f1566a6becc79892ea08b27cd (commit)
       via  bb7fbd4a9265f0fceea0d0f0ca21933ccbee004e (commit)
       via  dad3bf19f9381ec7b0e8ba188626dddc81e8334e (commit)
       via  67ce5c51fad3b8bdc866d181e58293e87dc265a3 (commit)
       via  9c0fd74003677eef751f51629c403a03f2241c06 (commit)
       via  348985d7c203ef469d9ffdb1d921475f48a7e823 (commit)
       via  632bf4271d3217495085f83b1de7845ac2da0032 (commit)
       via  eec15c138feaba1072ea64acfb27eef7357dc3a7 (commit)
       via  db8f8a559425859ed43df0ea70b4f6b2a4dcd506 (commit)
       via  5f25e94a1252325146a1fc7d3b2449450292d38d (commit)
       via  f3859ae1c33373a36e211e7c1500054908f6a189 (commit)
       via  70baabfbb4e13618de72299df79682022cdf9bd8 (commit)
       via  22e9b41768f640a6dece93c706e0bf6f43779cc7 (commit)
       via  3db9d948d9ea2a69608f2cb5260364979c4c326b (commit)
       via  b0f394cdd4280b1f8ad7dd4a034318badf3cb04c (commit)
       via  de8053313621eb1ba7db9f44d691b366d50143f9 (commit)
      from  3f26a4add1563e78ab9b50c9f77625f0690fc278 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                   |   11 +
 bfd/ChangeLog                               |  184 +++
 bfd/Makefile.am                             |   31 +-
 bfd/Makefile.in                             |   31 +-
 bfd/archive.c                               |   44 +-
 bfd/archures.c                              |    4 +-
 bfd/bfd-in2.h                               |   35 +-
 bfd/bfd.c                                   |    5 +
 bfd/configure                               |  259 +++-
 bfd/configure.in                            |   26 +-
 bfd/cpu-score.c                             |   68 +-
 bfd/dwarf2.c                                |   76 +-
 bfd/ecoff.c                                 |   11 +-
 bfd/elf-hppa.h                              | 1160 +--------------
 bfd/elf32-arm.c                             |   85 +-
 bfd/elf32-hppa.c                            |   70 +-
 bfd/elf32-i386.c                            |    7 +-
 bfd/elf32-ppc.c                             |  192 ++-
 bfd/elf32-score.c                           | 2250 +++++++++++++++++----------
 bfd/elf32-score.h                           |  152 ++
 bfd/{elf32-score.c => elf32-score7.c}       | 1842 ++++++++++++-----------
 bfd/elf32-spu.c                             |   13 +
 bfd/elf64-hppa.c                            | 2206 +++++++++++++++++++++------
 bfd/elf64-ppc.c                             |  280 +++-
 bfd/elf64-x86-64.c                          |    5 +-
 bfd/libbfd.h                                |    6 +-
 bfd/peXXigen.c                              |   16 +-
 bfd/po/es.po                                | 1943 +++++++++++++-----------
 bfd/reloc.c                                 |   21 +-
 bfd/section.c                               |   13 +-
 bfd/som.c                                   |    6 +-
 bfd/version.h                               |    2 +-
 gdb/ChangeLog                               |  181 +++
 gdb/Makefile.in                             |   12 +-
 gdb/ada-lang.c                              |   48 -
 gdb/ada-lang.h                              |    4 -
 gdb/ada-tasks.c                             |   37 -
 gdb/aix-thread.c                            |   26 +-
 gdb/breakpoint.c                            |   24 +-
 gdb/cli/cli-cmds.c                          |    2 +-
 gdb/common/gdb_signals.h                    |   56 +
 gdb/{signals => common}/signals.c           |    9 +-
 gdb/dec-thread.c                            |   75 +-
 gdb/disasm.c                                |    1 -
 gdb/disasm.h                                |    1 -
 gdb/doc/ChangeLog                           |    7 +
 gdb/doc/gdb.texinfo                         |   45 +-
 gdb/dwarf2read.c                            |  164 ++-
 gdb/gdbserver/ChangeLog                     |    8 +
 gdb/gdbserver/Makefile.in                   |    7 +-
 gdb/gdbserver/server.h                      |    8 +-
 gdb/infcmd.c                                |   81 +-
 gdb/inferior.h                              |    2 +
 gdb/infrun.c                                |   58 +-
 gdb/mi/mi-cmd-disas.c                       |    1 -
 gdb/objfiles.c                              |    4 +-
 gdb/printcmd.c                              |   94 ++-
 gdb/remote.c                                |  100 +-
 gdb/solib-osf.c                             |    4 +-
 gdb/solib.c                                 |   62 +-
 gdb/solib.h                                 |    6 +-
 gdb/stack.c                                 |    2 +-
 gdb/symtab.c                                |  145 +-
 gdb/target.h                                |   34 +-
 gdb/testsuite/ChangeLog                     |   10 +
 gdb/testsuite/gdb.arch/i386-permbkpt.S      |   30 +
 gdb/testsuite/gdb.arch/i386-permbkpt.exp    |   52 +
 gdb/testsuite/gdb.base/solib-display-lib.c  |   30 +
 gdb/testsuite/gdb.base/solib-display-main.c |   32 +
 gdb/testsuite/gdb.base/solib-display.exp    |  115 ++
 gdb/top.c                                   |    3 +-
 gdb/varobj.c                                |    2 +
 gdb/version.in                              |    2 +-
 gdb/windows-nat.c                           |   33 +-
 gdb/xcoffread.c                             |   34 +-
 include/elf/ChangeLog                       |   10 +
 include/elf/common.h                        |    3 +
 include/elf/ppc.h                           |    6 +-
 include/elf/ppc64.h                         |    4 +-
 include/elf/score.h                         |   13 +-
 include/opcode/ChangeLog                    |   10 +
 include/opcode/ppc.h                        |    4 +-
 include/opcode/score-datadep.h              |  227 +---
 include/opcode/score-inst.h                 |  313 +----
 libtool.m4                                  |   12 +-
 opcodes/ChangeLog                           |   50 +
 opcodes/Makefile.am                         |  341 ++---
 opcodes/Makefile.in                         |  349 ++---
 opcodes/configure                           |  257 +++-
 opcodes/configure.in                        |   24 +-
 opcodes/po/es.po                            |  249 ++-
 opcodes/po/id.po                            | 1021 +++++++++++--
 opcodes/ppc-dis.c                           |  291 +++--
 opcodes/ppc-opc.c                           |   20 +-
 opcodes/score-dis.c                         |  880 ++++++++++--
 opcodes/score-opc.h                         |  460 +++---
 opcodes/score7-dis.c                        |  972 ++++++++++++
 97 files changed, 11753 insertions(+), 6468 deletions(-)
 create mode 100644 bfd/elf32-score.h
 copy bfd/{elf32-score.c => elf32-score7.c} (69%)
 create mode 100644 gdb/common/gdb_signals.h
 rename gdb/{signals => common}/signals.c (99%)
 create mode 100644 gdb/testsuite/gdb.arch/i386-permbkpt.S
 create mode 100644 gdb/testsuite/gdb.arch/i386-permbkpt.exp
 create mode 100644 gdb/testsuite/gdb.base/solib-display-lib.c
 create mode 100644 gdb/testsuite/gdb.base/solib-display-main.c
 create mode 100644 gdb/testsuite/gdb.base/solib-display.exp
 create mode 100644 opcodes/score7-dis.c

First 500 lines of diff:
diff --git a/ChangeLog b/ChangeLog
index 474f3d4..5ee9384 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+	Backport from git Libtool:
+
+	2009-01-19  Robert Millan  <rmh@aybabtu.com>
+	Support GNU/kOpenSolaris.
+	* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
+	(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
+	(_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
+	GNU/kOpenSolaris.
+
 2009-02-05  Andreas Schwab  <schwab@suse.de>
 
 	* Makefile.tpl (stage_last): Define $r and $s before using
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index bdd2f80..9841e5d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,187 @@
+2009-03-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/9938
+	* elf32-i386.c (elf_i386_check_tls_transition): Use strncmp
+	to check ___tls_get_addr.
+
+	* elf64-x86-64.c (elf64_x86_64_check_tls_transition): Use
+	strncmp to check __tls_get_addr.
+
+2009-03-12  Andrew Stubbs  <ams@codesourcery.com>
+
+	* dwarf2.c (read_section): Always check the offset, even when the
+	section has been read before.
+
+2009-03-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf32-i386.c (elf_i386_check_tls_transition): Fix a typo in
+	comments.
+
+2009-03-11  Chris Demetriou  <cgd@google.com>
+
+	* bfd.c (BFD_DETERMINISTIC_OUTPUT): New flag.
+	* bfd-in2.h: Regenerate.
+	* archive.c (bfd_ar_hdr_from_filesystem): If BFD_DETERMINISTIC_OUTPUT
+	flag is set, use 0 for uid, gid, and timestamp, and use 0644 for file
+	mode.
+	(bsd_write_armap): Likewise.
+	(_bfd_archive_bsd_update_armap_timestamp): If BFD_DETERMINISTIC_OUTPUT
+	flag is set, do nothing.
+	(coff_write_armap): If BFD_DETERMINISTIC_OUTPUT flag is set, use 0
+	for timestamp.
+
+2009-03-11  Ulrich Weigand  <uweigand@de.ibm.com>
+
+	* elf32-spu.c (find_function_stack_adjust): Handle sf instruction
+	used to update stack pointer.
+
+2009-03-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+	PR binutils/9921
+	* som.c (som_bfd_derive_misc_symbol_info): Set symbol type ST_ABSOLUTE
+	for unknown symbols in absolute section.
+
+2009-03-06  Nick Clifton  <nickc@redhat.com>
+
+	* po/es.po: Updated Spanish translation.
+
+2009-03-05  Christophe Lyon  <christophe.lyon@st.com>
+
+	* elf32-arm.c (group_sections): Take next section size into
+	account before accepting to group it.
+
+2009-03-05  Christophe Lyon  <christophe.lyon@st.com>
+
+	* elf32-arm.c (arm_type_of_stub): Handle long branches targetting
+	PLT entries.
+	(elf32_arm_final_link_relocate): Likewise.
+
+2009-03-05  Moritz Kroll  <Moritz.Kroll@gmx.de>
+
+	PR 9923
+	* peXXigen.c (_bfd_XXi_final_link_postscript): Check h->root.type.
+
+2009-03-04  Alan Modra  <amodra@bigpond.net.au>
+
+	* reloc.c (BFD_RELOC_PPC_TLSGD, BFD_RELOC_PPC_TLSLD): New.
+	* section.c (struct bfd_section): Add has_tls_get_addr_call.
+	(BFD_FAKE_SECTION): Init new flag.
+	* ecoff.c (bfd_debug_section): Likewise.
+	* bfd-in2.h: Regenerate.
+	* libbfd.h: Regenerate.
+	* elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_TLSGD and R_PPC_TLSLD.
+	(ppc_elf_reloc_type_lookup): Handle new relocs.
+	(ppc_elf_check_relocs): Set has_tls_get_addr_call on finding such
+	without marker relocs.
+	(ppc_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
+	if section has no old-style calls.
+	(ppc_elf_relocate_section): Set tls_mask for non-tls relocs too.
+	Don't try to optimize new-style __tls_get_addr call when handling
+	arg setup relocs.  Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
+	relocs.
+	* elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_TLSGD, R_PPC64_TLSLD.
+	(ppc64_elf_reloc_type_lookup): Handle new relocs.
+	(ppc64_elf_check_relocs): Set has_tls_get_addr_call on finding such
+	without marker relocs.
+	(ppc64_elf_tls_optimize): Allow out-of-order __tls_get_addr relocs
+	if section has no old-style calls.  Set toc_ref for new relocs as
+	appropriate.
+	(ppc64_elf_relocate_section): Set tls_mask for non-tls relocs too.
+	Don't try to optimize new-style __tls_get_addr call when handling
+	arg setup relocs.  Instead do so for R_PPC_TLSGD and R_PPC_TLSLD
+	relocs.
+
+2009-03-04  Alan Modra  <amodra@bigpond.net.au>
+
+	PR 6768
+	* configure.in: Test for ld --as-needed support.  Link shared
+	libbfd against libm.
+	* configure: Regenerate.
+
+2009-03-03  Alan Modra  <amodra@bigpond.net.au>
+
+	* Makefile.am: Run "make dep-am".
+	* Makefile.in: Regenerate.
+
+2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
+
+	* elf32-score7.c: New file.
+	* elf32-score.h: New file.
+	* elf32-score.c: Add code to support score 7.  Set score7 as the
+	default.
+	* cpu-score.c: Add score7 architecure.
+	(compatibile): New function.
+	* Makefile.am: Add rules for building elf32-score7 object.
+	* Makefile.in: Regenerate.
+	* configure.in: Add elf32-score7 object to score vectors.
+	* configure: Regenerate.
+	* reloc.c: Add score7 relocs.
+	* archures.c: Add score3 and score7 machine numbers.
+	* bfd-in2.h: Regenerate.
+	* libbfd.h: Regenerate.
+
+2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+	* configure: Regenerate.
+
+2009-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+	* elf32-hppa.c (hppa32_elf_local_refcounts): New function.
+	(elf32_hppa_check_relocs): Use it.
+
+	* elf_hppa_add_symbol_hook (elf_hppa_add_symbol_hook): Move to
+	elf64-hppa.c.
+	(elf_hppa_unmark_useless_dynamic_symbols): Likewise.
+	(elf_hppa_remark_useless_dynamic_symbols): Likewise.
+	(elf_hppa_is_dynamic_loader_symbol): Likewise.
+	(elf_hppa_record_segment_addrs): Likewise.
+	(elf_hppa_final_link): Likewise.
+	(elf_hppa_relocate_insn): Likewise.
+	(elf_hppa_final_link_relocate): Likewise.
+	(elf64_hppa_relocate_section): Likewise.
+	* elf64-hppa.c: Insert above.
+
+2009-02-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+	* elf-hppa.h (elf_hppa_final_link): Use elf_hppa_final_link.
+	(elf_hppa_final_link_relocate ): Rewrite eliminating dynamic hash table.
+	(elf_hppa_relocate_section): Likewise.
+	* elf64-hppa.c (struct elf64_hppa_link_hash_entry): Change to derive
+	from struct elf_link_hash_entry.  Add count field.
+	(struct elf64_hppa_dyn_hash_table): Delete.
+	(struct elf64_hppa_link_hash_table): Delete dyn_hash_table field.
+	(elf64_hppa_hash_table): Rename to hppa_link_hash_table.
+	(hppa_elf_hash_entry, eh_name): Define.
+	(elf64_hppa_new_dyn_hash_entry): Delete.
+	(elf64_hppa_dyn_hash_lookup): Delete.
+	(elf64_hppa_dyn_hash_traverse): Delete.
+	(get_dyn_name): Delete.
+	(elf64_hppa_finalize_opd): Use struct elf_link_hash_entry * instead
+	of struct elf64_hppa_dyn_hash_entry *.
+	(elf64_hppa_finalize_dlt, llocate_global_data_dlt,
+	allocate_global_data_plt, allocate_global_data_stub,
+	allocate_global_data_opd, count_dyn_reloc, allocate_dynrel_entries):
+	Likewise.
+	(hppa64_link_hash_newfunc): New.
+	(elf64_hppa_hash_table_create): Rework.
+	(count_dyn_reloc): Likewise.
+	(hppa64_elf_local_refcounts): New.
+	(elf64_hppa_check_relocs): Rework using standard technique for recording
+	local DLT, PLT and OPD reference counts.
+	(elf64_hppa_dynamic_symbol_p): Revise using "eh" for struct
+	elf_link_hash_entry *.
+	(elf64_hppa_mark_exported_functions, allocate_global_data_dlt,
+	allocate_global_data_plt, allocate_global_data_stub,
+	allocate_global_data_opd, allocate_dynrel_entries,
+	elf64_hppa_adjust_dynamic_symbol,
+	elf64_hppa_mark_milli_and_exported_functions): Likewise.
+	(elf64_hppa_create_dynamic_sections, elf64_hppa_size_dynamic_sections):
+	Use hppa_link_hash_table.  Rework.
+	(elf64_hppa_link_output_symbol_hook): Rework.
+	(elf64_hppa_finish_dynamic_symbol, elf64_hppa_finalize_opd,
+	elf64_hppa_finalize_dlt, elf64_hppa_finalize_dynreloc,
+	elf64_hppa_finish_dynamic_sections): Likewise.
+
 2009-02-26  Christophe Lyon  <christophe.lyon@st.com>
 
 	* elf32-arm.c (stub_reloc_type): Removed.
diff --git a/bfd/Makefile.am b/bfd/Makefile.am
index 8d67cb8..1c150cd 100644
--- a/bfd/Makefile.am
+++ b/bfd/Makefile.am
@@ -289,6 +289,7 @@ BFD32_BACKENDS = \
 	elf32-ppc.lo \
 	elf32-s390.lo \
 	elf32-score.lo \
+	elf32-score7.lo \
 	elf32-sh.lo \
 	elf32-sh-symbian.lo \
 	elf32-sh64.lo \
@@ -474,6 +475,7 @@ BFD32_BACKENDS_CFILES = \
 	elf32-sh64-com.c \
 	elf32-s390.c \
 	elf32-score.c \
+	elf32-score7.c \
 	elf32-sh.c \
 	elf32-sh-symbian.c \
 	elfxx-sparc.c \
@@ -1050,11 +1052,10 @@ archive.lo: archive.c $(INCDIR)/filenames.h $(INCDIR)/libiberty.h \
 archures.lo: archures.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/safe-ctype.h
 bfd.lo: bfd.c $(INCDIR)/filenames.h bfdver.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/demangle.h $(INCDIR)/libiberty.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h \
-  $(INCDIR)/coff/sym.h libcoff.h libecoff.h $(INCDIR)/coff/ecoff.h \
-  elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/elf/internal.h
+  $(INCDIR)/demangle.h $(INCDIR)/safe-ctype.h $(INCDIR)/bfdlink.h \
+  $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/sym.h \
+  libcoff.h libecoff.h $(INCDIR)/coff/ecoff.h elf-bfd.h \
+  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h
 bfdio.lo: bfdio.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h
 bfdwin.lo: bfdwin.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h
 cache.lo: cache.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
@@ -1458,15 +1459,15 @@ elf32-iq2000.lo: elf32-iq2000.c $(INCDIR)/filenames.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/elf/iq2000.h $(INCDIR)/elf/reloc-macros.h \
   elf32-target.h
+elf32-lm32.lo: elf32-lm32.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
+  elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/lm32.h \
+  $(INCDIR)/elf/reloc-macros.h elf32-target.h
 elf32-m32c.lo: elf32-m32c.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/m32c.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/libiberty.h \
   elf32-target.h
-elf32-lm32.lo: elf32-lm32.c $(INCDIR)/filenames.h elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/lm32.h $(INCDIR)/elf/reloc-macros.h \
-  elf32-target.h
 elf32-m32r.lo: elf32-m32r.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/m32r.h \
@@ -1571,7 +1572,12 @@ elf32-score.lo: elf32-score.c $(INCDIR)/filenames.h \
   $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
-  elf32-target.h
+  elf32-score.h elf32-target.h
+elf32-score7.lo: elf32-score7.c $(INCDIR)/filenames.h \
+  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h elf-bfd.h \
+  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
+  $(INCDIR)/bfdlink.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
+  elf32-score.h
 elf32-sh.lo: elf32-sh.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h elf-bfd.h $(INCDIR)/elf/common.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h elf-vxworks.h \
@@ -1716,7 +1722,8 @@ m88kopenbsd.lo: m88kopenbsd.c netbsd.h $(INCDIR)/filenames.h \
   $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def \
   $(INCDIR)/aout/ar.h
 mach-o.lo: mach-o.c $(INCDIR)/filenames.h mach-o.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h mach-o-target.c
+  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h $(INCDIR)/aout/stab_gnu.h \
+  $(INCDIR)/aout/stab.def mach-o-target.c
 mipsbsd.lo: mipsbsd.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   libaout.h $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h
@@ -1865,7 +1872,7 @@ vms-misc.lo: vms-misc.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h vms.h
 vms-tir.lo: vms-tir.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h vms.h
-vmsutil.lo: vmsutil.c vmsutil.h $(INCDIR)/ansidecl.h
+vmsutil.lo: vmsutil.c vmsutil.h
 xcofflink.lo: xcofflink.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/xcoff.h \
   libcoff.h libxcoff.h
diff --git a/bfd/Makefile.in b/bfd/Makefile.in
index 9932dea..32191a1 100644
--- a/bfd/Makefile.in
+++ b/bfd/Makefile.in
@@ -555,6 +555,7 @@ BFD32_BACKENDS = \
 	elf32-ppc.lo \
 	elf32-s390.lo \
 	elf32-score.lo \
+	elf32-score7.lo \
 	elf32-sh.lo \
 	elf32-sh-symbian.lo \
 	elf32-sh64.lo \
@@ -740,6 +741,7 @@ BFD32_BACKENDS_CFILES = \
 	elf32-sh64-com.c \
 	elf32-s390.c \
 	elf32-score.c \
+	elf32-score7.c \
 	elf32-sh.c \
 	elf32-sh-symbian.c \
 	elfxx-sparc.c \
@@ -1646,11 +1648,10 @@ archive.lo: archive.c $(INCDIR)/filenames.h $(INCDIR)/libiberty.h \
 archures.lo: archures.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   $(INCDIR)/safe-ctype.h
 bfd.lo: bfd.c $(INCDIR)/filenames.h bfdver.h $(INCDIR)/libiberty.h \
-  $(INCDIR)/demangle.h $(INCDIR)/libiberty.h $(INCDIR)/safe-ctype.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h \
-  $(INCDIR)/coff/sym.h libcoff.h libecoff.h $(INCDIR)/coff/ecoff.h \
-  elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/elf/internal.h
+  $(INCDIR)/demangle.h $(INCDIR)/safe-ctype.h $(INCDIR)/bfdlink.h \
+  $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/sym.h \
+  libcoff.h libecoff.h $(INCDIR)/coff/ecoff.h elf-bfd.h \
+  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h
 bfdio.lo: bfdio.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h
 bfdwin.lo: bfdwin.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h
 cache.lo: cache.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
@@ -2054,15 +2055,15 @@ elf32-iq2000.lo: elf32-iq2000.c $(INCDIR)/filenames.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/elf/iq2000.h $(INCDIR)/elf/reloc-macros.h \
   elf32-target.h
+elf32-lm32.lo: elf32-lm32.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
+  elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
+  $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/lm32.h \
+  $(INCDIR)/elf/reloc-macros.h elf32-target.h
 elf32-m32c.lo: elf32-m32c.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/m32c.h \
   $(INCDIR)/elf/reloc-macros.h $(INCDIR)/libiberty.h \
   elf32-target.h
-elf32-lm32.lo: elf32-lm32.c $(INCDIR)/filenames.h elf-bfd.h \
-  $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h \
-  $(INCDIR)/bfdlink.h $(INCDIR)/elf/lm32.h $(INCDIR)/elf/reloc-macros.h \
-  elf32-target.h
 elf32-m32r.lo: elf32-m32r.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   elf-bfd.h $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h \
   $(INCDIR)/elf/internal.h $(INCDIR)/bfdlink.h $(INCDIR)/elf/m32r.h \
@@ -2167,7 +2168,12 @@ elf32-score.lo: elf32-score.c $(INCDIR)/filenames.h \
   $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h elf-bfd.h \
   $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
   $(INCDIR)/bfdlink.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
-  elf32-target.h
+  elf32-score.h elf32-target.h
+elf32-score7.lo: elf32-score7.c $(INCDIR)/filenames.h \
+  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h elf-bfd.h \
+  $(INCDIR)/elf/common.h $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h \
+  $(INCDIR)/bfdlink.h $(INCDIR)/elf/score.h $(INCDIR)/elf/reloc-macros.h \
+  elf32-score.h
 elf32-sh.lo: elf32-sh.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h elf-bfd.h $(INCDIR)/elf/common.h \
   $(INCDIR)/elf/external.h $(INCDIR)/elf/internal.h elf-vxworks.h \
@@ -2312,7 +2318,8 @@ m88kopenbsd.lo: m88kopenbsd.c netbsd.h $(INCDIR)/filenames.h \
   $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def \
   $(INCDIR)/aout/ar.h
 mach-o.lo: mach-o.c $(INCDIR)/filenames.h mach-o.h \
-  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h mach-o-target.c
+  $(INCDIR)/hashtab.h $(INCDIR)/libiberty.h $(INCDIR)/aout/stab_gnu.h \
+  $(INCDIR)/aout/stab.def mach-o-target.c
 mipsbsd.lo: mipsbsd.c $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
   libaout.h $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \
   $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h
@@ -2461,7 +2468,7 @@ vms-misc.lo: vms-misc.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h vms.h
 vms-tir.lo: vms-tir.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h vms.h
-vmsutil.lo: vmsutil.c vmsutil.h $(INCDIR)/ansidecl.h
+vmsutil.lo: vmsutil.c vmsutil.h
 xcofflink.lo: xcofflink.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \
   $(INCDIR)/hashtab.h $(INCDIR)/coff/internal.h $(INCDIR)/coff/xcoff.h \
   libcoff.h libxcoff.h
diff --git a/bfd/archive.c b/bfd/archive.c
index 437a085..5e0fd6b 100644
--- a/bfd/archive.c
+++ b/bfd/archive.c
@@ -1652,6 +1652,16 @@ bfd_ar_hdr_from_filesystem (bfd *abfd, const char *filename, bfd *member)
       return NULL;
     }
 
+  /* If the caller requested that the BFD generate deterministic output,
+     fake values for modification time, UID, GID, and file mode.  */
+  if ((abfd->flags & BFD_DETERMINISTIC_OUTPUT) != 0)
+    {
+      status.st_mtime = 0;
+      status.st_uid = 0;
+      status.st_gid = 0;
+      status.st_mode = 0644;
+    }
+
   amt = sizeof (struct ar_hdr) + sizeof (struct areltdata);
   ared = bfd_zalloc (abfd, amt);
   if (ared == NULL)
@@ -2220,20 +2230,39 @@ bsd_write_armap (bfd *arch,
   unsigned int count;
   struct ar_hdr hdr;
   struct stat statbuf;
+  long uid, gid;
 
   firstreal = mapsize + elength + sizeof (struct ar_hdr) + SARMAG;
 
   stat (arch->filename, &statbuf);
+  if ((arch->flags & BFD_DETERMINISTIC_OUTPUT) == 0)
+    {
+      /* Remember the timestamp, to keep it holy.  But fudge it a little.  */
+      bfd_ardata (arch)->armap_timestamp = (statbuf.st_mtime
+                                            + ARMAP_TIME_OFFSET);
+      uid = getuid();
+      gid = getgid();
+    }
+  else
+    {
+      /* If deterministic, we use 0 as the timestamp in the map.
+         Some linkers may require that the archive filesystem modification
+         time is less than (or near to) the archive map timestamp.  Those
+         linkers should not be used with deterministic mode.  (GNU ld and
+         Gold do not have this restriction.)  */
+      bfd_ardata (arch)->armap_timestamp = 0;
+      uid = 0;
+      gid = 0;
+    }
+
   memset (&hdr, ' ', sizeof (struct ar_hdr));
   memcpy (hdr.ar_name, RANLIBMAG, strlen (RANLIBMAG));
-  /* Remember the timestamp, to keep it holy.  But fudge it a little.  */
-  bfd_ardata (arch)->armap_timestamp = statbuf.st_mtime + ARMAP_TIME_OFFSET;
   bfd_ardata (arch)->armap_datepos = (SARMAG
 				      + offsetof (struct ar_hdr, ar_date[0]));
   _bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
                     bfd_ardata (arch)->armap_timestamp);
-  _bfd_ar_spacepad (hdr.ar_uid, sizeof (hdr.ar_uid), "%ld", getuid ());
-  _bfd_ar_spacepad (hdr.ar_gid, sizeof (hdr.ar_gid), "%ld", getgid ());
+  _bfd_ar_spacepad (hdr.ar_uid, sizeof (hdr.ar_uid), "%ld", uid);
+  _bfd_ar_spacepad (hdr.ar_gid, sizeof (hdr.ar_gid), "%ld", gid);
   _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld", mapsize);
   memcpy (hdr.ar_fmag, ARFMAG, 2);
   if (bfd_bwrite (&hdr, sizeof (struct ar_hdr), arch)
@@ -2301,6 +2330,10 @@ _bfd_archive_bsd_update_armap_timestamp (bfd *arch)
   struct stat archstat;
   struct ar_hdr hdr;
 
+  /* If creating deterministic archives, just leave the timestamp as-is.  */
+  if ((arch->flags & BFD_DETERMINISTIC_OUTPUT) != 0)
+    return TRUE;
+
   /* Flush writes, get last-write timestamp from file, and compare it
      to the timestamp IN the file.  */
   bfd_flush (arch);
@@ -2385,7 +2418,8 @@ coff_write_armap (bfd *arch,
   _bfd_ar_spacepad (hdr.ar_size, sizeof (hdr.ar_size), "%-10ld",
                     mapsize);
   _bfd_ar_spacepad (hdr.ar_date, sizeof (hdr.ar_date), "%ld",
-                    time (NULL));
+                    ((arch->flags & BFD_DETERMINISTIC_OUTPUT) == 0
+                     ? time (NULL) : 0));
   /* This, at least, is what Intel coff sets the values to.  */
   _bfd_ar_spacepad (hdr.ar_uid, sizeof (hdr.ar_uid), "%ld", 0);
   _bfd_ar_spacepad (hdr.ar_gid, sizeof (hdr.ar_gid), "%ld", 0);
diff --git a/bfd/archures.c b/bfd/archures.c
index f548ea2..fa03d81 100644
--- a/bfd/archures.c
+++ b/bfd/archures.c
@@ -1,6 +1,6 @@
 /* BFD library support routines for architectures.
    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
    Free Software Foundation, Inc.
    Hacked by John Gilmore and Steve Chamberlain of Cygnus Support.
 
@@ -376,6 +376,8 @@ DESCRIPTION
 .#define bfd_mach_s390_31       31
 .#define bfd_mach_s390_64       64
 .  bfd_arch_score,     {* Sunplus score *} 
+.#define bfd_mach_score3         3
+.#define bfd_mach_score7         7
 .  bfd_arch_openrisc,  {* OpenRISC *}
 .  bfd_arch_mmix,      {* Donald Knuth's educational processor.  *}
 .  bfd_arch_xstormy16,
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 7870962..7e3defd 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h


hooks/post-receive
--
Repository for Project Archer.


             reply	other threads:[~2009-03-12 20:10 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-12 20:10 jkratoch [this message]
  -- strict thread matches above, loose matches on Subject: below --
2009-02-28 20:29 jkratoch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090312201052.27242.qmail@sourceware.org \
    --to=jkratoch@sourceware.org \
    --cc=archer-commits@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).