public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
From: jkratoch@sourceware.org
To: archer-commits@sourceware.org
Subject: [SCM]  archer-jankratochvil-python: Merge commit 'origin/archer-tromey-python' into archer-jankratochvil-python
Date: Fri, 27 Mar 2009 00:35:00 -0000	[thread overview]
Message-ID: <20090327003500.627.qmail@sourceware.org> (raw)

The branch, archer-jankratochvil-python has been updated
       via  68ac9fbeb0ff5bc68f44bfd25445a2243ef3dc79 (commit)
       via  33b84b7e2f03c65b80ccaf9fbb23b74ea1daa15e (commit)
       via  95b4138baf512e661d95b09c38bdd95c05234a1e (commit)
       via  2425a4d7939bae66a15832bd8a325be4aa26e4bf (commit)
       via  3157aba1ab73fb5b5cd0e2dbb5c031a1336a93db (commit)
       via  64c287329177f68d0da2ce81207f5f3f105dabfe (commit)
       via  cbd12f3666346846dd18e762f7881f4a0b1767ee (commit)
       via  3092115a3d791e551209af2e1945666169a04de7 (commit)
       via  27c4a5d2ebbfd4f68a5e87b459adbbc6eeda7cf8 (commit)
       via  8c4195d13e945d3cf2c8583c9f818bbf4a3b5710 (commit)
       via  390ac7259731cdf469ea739345e64d3a7d248818 (commit)
       via  9533c58c4b0c692975a4b97267222ad002364a29 (commit)
       via  3f81316d6eb8f3c951acd8774da7bc8ad23bdedd (commit)
       via  c5f1a7ef72922178569418b5d5060f8240c1767e (commit)
       via  6f1a685bc7bfe44af998e54b99963dffc8e715e5 (commit)
       via  d7b3c9ecbb4f7c782aacbe4224c9aeb8d0d161b2 (commit)
       via  b20dff1b337ceb1bd5f241bff2ed1233780936df (commit)
       via  032f67142ca0678c31a574314adc53d316960f72 (commit)
       via  817ede0ad440e39f3311cc8a1f55ad5655b97e9a (commit)
       via  165709eaa90768f4d03e76188188e5e5afa4ac2c (commit)
       via  50a6b4966bccf97597d65486bd60561d05a65dff (commit)
       via  b3c3db206b652d19fad5290df7b630335acc5889 (commit)
       via  02dc98a6209b37e8473ee3218b5eb4ff6bc7e44d (commit)
       via  70e735001ef74606d3e86a75cf4fd04173e10974 (commit)
       via  90ab18a605385cb7e7984c4ac83a4f7461f99906 (commit)
       via  3836cfdf3b7de8b0f34fda25e5a1b4ae33e253ea (commit)
       via  6c2b67e0220165c9411c128b2f8f7d1e8856795b (commit)
       via  7f0e4fa27448e8da47cdedfa6f8342f94245ab76 (commit)
       via  ff21434d7a766aba9f937e270016e4e7d9e6ba40 (commit)
       via  40dd9754f21987e1fca43c2cde6b3adc18464f1d (commit)
       via  60194aaeeb94372651c09fb5dc0cb5d3329b921e (commit)
       via  c3bcf1c464f8633b5ce91cb72bafee27ce9b05ce (commit)
       via  7d1733001ce46390908da9e6868f45006409b056 (commit)
       via  214296a4b2a36f3e0bc8a270647da2fc21b8b874 (commit)
       via  7ad6aabd74342df423bc2ba496c9750e14d86e85 (commit)
       via  0ee8ee241dcc7feeaf538a120826051dcd8cccfd (commit)
       via  3caef2b656659161247d9c8d418ba8fcc889a04c (commit)
       via  da12fddea1a71fb3b808e88a5ef83bbca8e2cb30 (commit)
       via  297cccbb83721274c4df1eec08dde9eb9f51a733 (commit)
       via  7f43a566f95a1cf96ed799471319b5c574ee575e (commit)
       via  e0f2167a8e0855ab0a1545da2b5f1472cac923dc (commit)
       via  0db2376071441d14829885eaa95b2b8a69a3a1ae (commit)
       via  22a744906c7e0303d9f56c9160900946eff17206 (commit)
       via  d65e7bd9988748a8d39dba3439cbf3cfc873f724 (commit)
       via  e5e85060ca59a79204d185b1b4cf3e30eb0fd1ba (commit)
       via  50158e6deec5d6304429f655fd0a7990c0c14cfc (commit)
       via  f01a34d4d484fb2a8e69233429e993283ee39235 (commit)
       via  d33df476c193a636fbc205d541dce62a6b327fdb (commit)
       via  5943423dd8fd3c0df0586c8c05631165d84f341d (commit)
       via  b4494ffc89755afd15f3dda0b71b82244aa5ea2f (commit)
       via  095e9826734cc7660ab9f444e72a517736272902 (commit)
       via  a371c4d2c371566a571f9c9d08df72f200024b9c (commit)
       via  2e7a4dfe356485e3d14ec2b73b405f016336fcd2 (commit)
       via  d351e41f278158d1b8219d523b0fa03c02b76189 (commit)
       via  8a4ca176c977982bf74c885ec927ed3d6c677bde (commit)
       via  6418262610197a1d63af6393d077f10fac01304c (commit)
       via  67df65cc54808054e45498160f67ce682a9aaa7b (commit)
       via  7075b478c79fa7bf8a95b17474f5f799b0ad5523 (commit)
      from  2e4985cad1fc3d054eaceac9aef5fed7dfa2fd37 (commit)

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

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

Summary of changes:
 bfd/ChangeLog                         |   50 +
 bfd/cpu-i386.c                        |    8 +-
 bfd/elf32-cris.c                      |   32 +-
 bfd/elf32-ppc.c                       |   31 +-
 bfd/elf32-s390.c                      |   33 +-
 bfd/elf64-ppc.c                       |   12 +-
 bfd/elf64-s390.c                      |   33 +-
 bfd/version.h                         |    2 +-
 gdb/ChangeLog                         |  487 +++++
 gdb/Makefile.in                       |   12 +-
 gdb/NEWS                              |   14 +
 gdb/acinclude.m4                      |   37 +-
 gdb/ada-exp.y                         |    1 +
 gdb/ada-lang.c                        |   33 +-
 gdb/ada-lang.h                        |    8 +-
 gdb/ada-typeprint.c                   |   11 +-
 gdb/ada-valprint.c                    |   26 +-
 gdb/auxv.c                            |    3 +-
 gdb/breakpoint.c                      |   61 +-
 gdb/buildsym.c                        |   26 +
 gdb/c-exp.y                           |  477 +++--
 gdb/c-lang.c                          |  826 +++++++-
 gdb/c-lang.h                          |   41 +-
 gdb/c-valprint.c                      |   83 +-
 gdb/charset-list.h                    | 1190 +++++++++++
 gdb/charset.c                         | 1559 +++++---------
 gdb/charset.h                         |  184 +-
 gdb/config.in                         |    6 +
 gdb/configure                         |  639 ++++---
 gdb/configure.ac                      |   58 +-
 gdb/darwin-nat.c                      |    8 +-
 gdb/defs.h                            |    2 +
 gdb/doc/ChangeLog                     |   50 +
 gdb/doc/gdb.texinfo                   |   88 +-
 gdb/doc/gdbint.texinfo                | 1651 +++++++++++----
 gdb/doc/observer.texi                 |    4 +
 gdb/doc/stack_frame.eps               | 3708 +++++++++++++++++++++++++++++++++
 gdb/doc/stack_frame.pdf               |  Bin 0 -> 77972 bytes
 gdb/doc/stack_frame.png               |  Bin 0 -> 67273 bytes
 gdb/doc/stack_frame.svg               |  866 ++++++++
 gdb/doc/stack_frame.txt               |   39 +
 gdb/dwarf2expr.c                      |    2 +-
 gdb/eval.c                            |    1 +
 gdb/expprint.c                        |   12 +-
 gdb/f-lang.c                          |   20 +-
 gdb/f-valprint.c                      |    7 +-
 gdb/gdb_locale.h                      |    4 +
 gdb/gdb_obstack.h                     |    3 +
 gdb/{mi/mi-main.h => gdb_usleep.c}    |   35 +-
 gdb/{mi/mi-main.h => gdb_usleep.h}    |   24 +-
 gdb/gdb_wchar.h                       |   62 +
 gdb/gdbserver/ChangeLog               |   25 +
 gdb/gdbserver/Makefile.in             |   18 +-
 gdb/gdbserver/configure               |    2 +-
 gdb/gdbserver/configure.ac            |    6 +-
 gdb/gdbserver/gdbreplay.c             |    2 +-
 gdb/gdbserver/i387-fp.c               |   40 +-
 gdb/gdbserver/inferiors.c             |    5 +-
 gdb/gdbserver/linux-arm-low.c         |    2 +-
 gdb/gdbserver/linux-cris-low.c        |    4 +-
 gdb/gdbserver/linux-crisv32-low.c     |   44 +-
 gdb/gdbserver/linux-i386-low.c        |    4 +-
 gdb/gdbserver/linux-low.c             |  177 +-
 gdb/gdbserver/linux-mips-low.c        |    2 +-
 gdb/gdbserver/linux-s390-low.c        |    1 -
 gdb/gdbserver/linux-sparc-low.c       |   39 +-
 gdb/gdbserver/linux-x86-64-low.c      |   10 +-
 gdb/gdbserver/linux-xtensa-low.c      |    2 +-
 gdb/gdbserver/proc-service.c          |    2 -
 gdb/gdbserver/regcache.c              |    5 +-
 gdb/gdbserver/remote-utils.c          |   48 +-
 gdb/gdbserver/server.c                |   56 +-
 gdb/gdbserver/spu-low.c               |    8 +-
 gdb/gdbserver/target.h                |    8 +-
 gdb/gdbserver/thread-db.c             |    2 +-
 gdb/gdbserver/win32-low.c             |   82 +-
 gdb/gdbserver/xtensa-xtregs.c         |    1 -
 gdb/gdbthread.h                       |    4 +
 gdb/infcall.c                         |   26 +-
 gdb/infcmd.c                          |   27 +-
 gdb/inferior.h                        |   12 -
 gdb/infrun.c                          |   34 +-
 gdb/jv-lang.c                         |    5 +-
 gdb/jv-valprint.c                     |    4 +-
 gdb/language.c                        |   16 +-
 gdb/language.h                        |   21 +-
 gdb/m2-lang.c                         |   19 +-
 gdb/m2-valprint.c                     |   10 +-
 gdb/macroexp.c                        |   31 +-
 gdb/mi/mi-interp.c                    |   32 +-
 gdb/mi/mi-main.c                      |    5 +
 gdb/mi/mi-main.h                      |    1 +
 gdb/objc-lang.c                       |   16 +-
 gdb/p-lang.c                          |   32 +-
 gdb/p-lang.h                          |    9 +-
 gdb/p-valprint.c                      |   20 +-
 gdb/parse.c                           |   59 +
 gdb/parser-defs.h                     |   18 +
 gdb/printcmd.c                        |  104 +-
 gdb/python/python-cmd.c               |    2 +-
 gdb/python/python.c                   |   11 +-
 gdb/scm-lang.c                        |    6 +-
 gdb/scm-lang.h                        |    2 +-
 gdb/scm-valprint.c                    |    3 +-
 gdb/ser-unix.c                        |    9 +-
 gdb/symfile.c                         |    9 +-
 gdb/symtab.c                          |    2 +-
 gdb/testsuite/ChangeLog               |   41 +
 gdb/testsuite/gdb.base/auxv.exp       |   12 +-
 gdb/testsuite/gdb.base/call-rt-st.exp |    2 +-
 gdb/testsuite/gdb.base/callfuncs.exp  |   14 +-
 gdb/testsuite/gdb.base/charset.c      |   39 +-
 gdb/testsuite/gdb.base/charset.exp    |  214 ++-
 gdb/testsuite/gdb.base/constvars.exp  |    6 +-
 gdb/testsuite/gdb.base/long_long.exp  |   10 +-
 gdb/testsuite/gdb.base/pointers.exp   |    2 +-
 gdb/testsuite/gdb.base/printcmds.exp  |   58 +-
 gdb/testsuite/gdb.base/setvar.exp     |    6 +-
 gdb/testsuite/gdb.base/store.exp      |    4 +-
 gdb/testsuite/gdb.cp/ref-types.exp    |    4 +-
 gdb/testsuite/lib/gdb.exp             |    3 +
 gdb/thread.c                          |    6 +-
 gdb/typeprint.c                       |    2 +-
 gdb/utils.c                           |  127 +-
 gdb/valops.c                          |   18 +
 gdb/valprint.c                        |   13 +-
 gdb/valprint.h                        |    5 +-
 gdb/value.c                           |    1 +
 gdb/value.h                           |    4 +-
 gdb/varobj.c                          |   10 +-
 gdb/version.in                        |    2 +-
 gdb/windows-nat.c                     |  350 ++--
 include/elf/ChangeLog                 |    4 +
 include/elf/common.h                  |    1 +
 libiberty/ChangeLog                   |    8 +
 libiberty/cp-demangle.c               |   24 +-
 libiberty/testsuite/demangle-expected |   10 +-
 137 files changed, 11663 insertions(+), 3050 deletions(-)
 create mode 100644 gdb/charset-list.h
 create mode 100644 gdb/doc/stack_frame.eps
 create mode 100644 gdb/doc/stack_frame.pdf
 create mode 100644 gdb/doc/stack_frame.png
 create mode 100644 gdb/doc/stack_frame.svg
 create mode 100644 gdb/doc/stack_frame.txt
 copy gdb/{mi/mi-main.h => gdb_usleep.c} (58%)
 copy gdb/{mi/mi-main.h => gdb_usleep.h} (58%)
 create mode 100644 gdb/gdb_wchar.h

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index dc5454b..dfb9bb5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,53 @@
+2009-03-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* cpu-i386.c (bfd_x86_64_arch_intel_syntax): Make it static.
+	(bfd_i386_arch_intel_syntax): Likewise.
+	(i8086_arch): Likewise.
+	(bfd_x86_64_arch): Likewise.
+
+2009-03-24  Hans-Peter Nilsson  <hp@axis.com>
+
+	* elf32-cris.c (cris_elf_relocate_section): <case
+	R_CRIS_16_DTPREL, R_CRIS_32_DTPREL>: Allow use of non-local
+	symbols for non-allocated sections.  Don't check whether to
+	generate R_CRIS_DTPMOD for non-allocated sections.
+	(cris_elf_gc_sweep_hook) <case R_CRIS_32_DTPREL>: Don't
+	handle relocation GC:ing if applied to non-allocated section.
+	(cris_elf_check_relocs): Similar.
+
+	* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GD>
+	<R_CRIS_16_GOT_GD, R_CRIS_32_GOT_GD>: Don't include the TLS size
+	when emitting a known TP offset in the GOT.
+
+2009-03-23  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf64-ppc.c (synthetic_opd): Delete.
+	(compare_symbols): Look for .opd name rather than section match.
+	(ppc64_elf_get_synthetic_symtab): Likewise.
+
+2009-03-21  Alan Modra  <amodra@bigpond.net.au>
+
+	* elf32-ppc.c (is_pic_glink_stub): Delete.
+	(is_nonpic_glink_stub): New function.
+	(ppc_elf_get_synthetic_symtab): Check for last non-pic stub rather
+	than first pic one.
+	(struct ppc_elf_link_hash_table <glink_pltresolve>): Comment fix.
+
+2009-03-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
+	    Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
+
+	* elf32-s390.c (elf_s390_check_relocs): Use the SYMBOL_*
+        macros for visibilty and locality checks.
+	(elf_s390_adjust_dynamic_symbol): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(elf_s390_relocate_section): Likewise.
+	(elf_s390_finish_dynamic_symbol): Likewise.
+	* elf64-s390.c (elf_s390_check_relocs): Likewise.
+	(elf_s390_adjust_dynamic_symbol): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(elf_s390_relocate_section): Likewise.
+	(elf_s390_finish_dynamic_symbol): Likewise.
+
 2009-03-19  Kai Tietz  <kai.tietz@onevision.com>
 
 	* bfd-in2.h: Regenerated.
diff --git a/bfd/cpu-i386.c b/bfd/cpu-i386.c
index 4001a05..952e659 100644
--- a/bfd/cpu-i386.c
+++ b/bfd/cpu-i386.c
@@ -23,7 +23,7 @@
 #include "bfd.h"
 #include "libbfd.h"
 
-const bfd_arch_info_type bfd_x86_64_arch_intel_syntax =
+static const bfd_arch_info_type bfd_x86_64_arch_intel_syntax =
 {
   64, /* 64 bits in a word */
   64, /* 64 bits in an address */
@@ -39,7 +39,7 @@ const bfd_arch_info_type bfd_x86_64_arch_intel_syntax =
   0
 };
 
-const bfd_arch_info_type bfd_i386_arch_intel_syntax =
+static const bfd_arch_info_type bfd_i386_arch_intel_syntax =
 {
   32,	/* 32 bits in a word */
   32,	/* 32 bits in an address */
@@ -55,7 +55,7 @@ const bfd_arch_info_type bfd_i386_arch_intel_syntax =
   &bfd_x86_64_arch_intel_syntax
 };
 
-const bfd_arch_info_type i8086_arch =
+static const bfd_arch_info_type i8086_arch =
 {
   32,	/* 32 bits in a word */
   32,	/* 32 bits in an address (well, not really) */
@@ -71,7 +71,7 @@ const bfd_arch_info_type i8086_arch =
   &bfd_i386_arch_intel_syntax
 };
 
-const bfd_arch_info_type bfd_x86_64_arch =
+static const bfd_arch_info_type bfd_x86_64_arch =
 {
   64, /* 32 bits in a word */
   64, /* 32 bits in an address */
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index bd6de29..ed1f3e8 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -1615,10 +1615,12 @@ cris_elf_relocate_section (output_bfd, info, input_bfd, input_section,
 	case R_CRIS_16_DTPREL:
 	case R_CRIS_32_DTPREL:
 	  /* This relocation must only be performed against local
-	     symbols.  It's also ok when we link a program and the
-	     symbol is defined in an ordinary (non-DSO) object (if
-	     it's undefined there, we've already seen an error).  */
+	     symbols, or to sections that are not loadable.  It's also
+	     ok when we link a program and the symbol is defined in an
+	     ordinary (non-DSO) object (if it's undefined there, we've
+	     already seen an error).  */
 	  if (h != NULL
+	      && (input_section->flags & SEC_ALLOC) != 0
 	      && ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
 	      && (info->shared
 		  || (!h->def_regular
@@ -1641,14 +1643,16 @@ cris_elf_relocate_section (output_bfd, info, input_bfd, input_section,
 	      return FALSE;
 	    }
 
-	  BFD_ASSERT (elf_cris_hash_table (info)->dtpmod_refcount != 0);
+	  BFD_ASSERT ((input_section->flags & SEC_ALLOC) == 0
+		      || elf_cris_hash_table (info)->dtpmod_refcount != 0);
 
 	  /* Fill in a R_CRIS_DTPMOD reloc at offset 3 if we haven't
 	     already done so.  Note that we do this in .got.plt, not
 	     in .got, as .got.plt contains the first part, still the
 	     reloc is against .got, because the linker script directs
 	     (is required to direct) them both into .got.  */
-	  if (elf_cris_hash_table (info)->dtpmod_refcount > 0)
+	  if (elf_cris_hash_table (info)->dtpmod_refcount > 0
+	      && (input_section->flags & SEC_ALLOC) != 0)
 	    {
 	      asection *sgotplt = bfd_get_section_by_name (dynobj, ".got.plt");
 	      BFD_ASSERT (sgotplt != NULL);
@@ -1735,9 +1739,8 @@ cris_elf_relocate_section (output_bfd, info, input_bfd, input_section,
 	      bfd_vma off;
 
 	      /* The symbol is defined in the program, so just write
-		 (1, -prog_tls_size+known_tpoffset) into the GOT.  */
+		 (1, known_tpoffset) into the GOT.  */
 	      relocation -= elf_hash_table (info)->tls_sec->vma;
-	      relocation -= elf_hash_table (info)->tls_size;
 
 	      if (h != NULL)
 		{
@@ -2685,6 +2688,10 @@ cris_elf_gc_sweep_hook (bfd *abfd,
 	  break;
 
 	case R_CRIS_32_DTPREL:
+	  /* This'd be a .dtpreld entry in e.g. debug info.  */
+	  if ((sec->flags & SEC_ALLOC) == 0)
+	    break;
+	  /* Fall through.  */
 	case R_CRIS_16_DTPREL:
 	  elf_cris_hash_table (info)->dtpmod_refcount--;
 	  if (elf_cris_hash_table (info)->dtpmod_refcount == 0)
@@ -3152,8 +3159,17 @@ cris_elf_check_relocs (abfd, info, sec, relocs)
 	 on the first input bfd we found that contained dynamic relocs.  */
       switch (r_type)
 	{
-	case R_CRIS_16_DTPREL:
 	case R_CRIS_32_DTPREL:
+	  if ((sec->flags & SEC_ALLOC) == 0)
+	    /* This'd be a .dtpreld entry in e.g. debug info.  We have
+	       several different switch statements below, but none of
+	       that is needed; we need no preparations for resolving
+	       R_CRIS_32_DTPREL into a non-allocated section (debug
+	       info), so let's just move on to the next
+	       relocation.  */
+	    continue;
+	  /* Fall through.  */
+	case R_CRIS_16_DTPREL:
 	  /* The first .got.plt entry is right after the R_CRIS_DTPMOD
 	     entry at index 3. */
 	  if (elf_cris_hash_table (info)->dtpmod_refcount == 0)
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index 5db64b0..e15f88e 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -2328,26 +2328,17 @@ ppc_elf_final_write_processing (bfd *abfd, bfd_boolean linker ATTRIBUTE_UNUSED)
 }
 \f
 static bfd_boolean
-is_pic_glink_stub (bfd *abfd, asection *glink, bfd_vma off)
+is_nonpic_glink_stub (bfd *abfd, asection *glink, bfd_vma off)
 {
-  bfd_byte buf[16];
-  unsigned int insn;
+  bfd_byte buf[GLINK_ENTRY_SIZE];
 
-  if (!bfd_get_section_contents (abfd, glink, buf, off, 16))
+  if (!bfd_get_section_contents (abfd, glink, buf, off, GLINK_ENTRY_SIZE))
     return FALSE;
 
-  insn = bfd_get_32 (abfd, buf);
-  if ((insn & 0xffff0000) == LWZ_11_30
-      && bfd_get_32 (abfd, buf + 4) == MTCTR_11
-      && bfd_get_32 (abfd, buf + 8) == BCTR)
-    return TRUE;
-
-  if ((insn & 0xffff0000) == ADDIS_11_30
-      && (bfd_get_32 (abfd, buf + 4) & 0xffff0000) == LWZ_11_11
-      && bfd_get_32 (abfd, buf + 8) == MTCTR_11
-      && bfd_get_32 (abfd, buf + 12) == BCTR)
-    return TRUE;
-  return FALSE;
+  return ((bfd_get_32 (abfd, buf + 0) & 0xffff0000) == LIS_11
+	  && (bfd_get_32 (abfd, buf + 4) & 0xffff0000) == LWZ_11_11
+	  && bfd_get_32 (abfd, buf + 8) == MTCTR_11
+	  && bfd_get_32 (abfd, buf + 12) == BCTR);
 }
 
 static bfd_boolean
@@ -2484,10 +2475,8 @@ ppc_elf_get_synthetic_symtab (bfd *abfd, long symcount, asymbol **syms,
      multiple stubs for each plt entry.  If that is the case then
      there is no way to associate stubs with their plt entries short
      of figuring out the GOT pointer value used in the stub.  */
-  if (!bfd_get_section_contents (abfd, glink, buf,
-				 stub_vma - glink->vma, 4)
-      || ((bfd_get_32 (abfd, buf) & 0xffff0000) != LIS_11
-	  && is_pic_glink_stub (abfd, glink, stub_vma - glink->vma - 16)))
+  if (!is_nonpic_glink_stub (abfd, glink,
+			     glink_vma - GLINK_ENTRY_SIZE - glink->vma))
     return 0;
 
   slurp_relocs = get_elf_backend_data (abfd)->s->slurp_reloc_table;
@@ -2722,7 +2711,7 @@ struct ppc_elf_link_hash_table
     bfd_vma offset;
   } tlsld_got;
 
-  /* Offset of PltResolve function in glink.  */
+  /* Offset of branch table to PltResolve function in glink.  */
   bfd_vma glink_pltresolve;
 
   /* Size of reserved GOT entries.  */
diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c
index 7aadadc..14c4cb0 100644
--- a/bfd/elf32-s390.c
+++ b/bfd/elf32-s390.c
@@ -1261,7 +1261,7 @@ elf_s390_check_relocs (abfd, info, sec, relocs)
 		    && ELF32_R_TYPE (rel->r_info) != R_390_PC32DBL
 		    && ELF32_R_TYPE (rel->r_info) != R_390_PC32)
 		   || (h != NULL
-		       && (! info->symbolic
+		       && (! SYMBOLIC_BIND (info, h)
 			   || h->root.type == bfd_link_hash_defweak
 			   || !h->def_regular))))
 	      || (ELIMINATE_COPY_RELOCS
@@ -1566,11 +1566,9 @@ elf_s390_adjust_dynamic_symbol (info, h)
       || h->needs_plt)
     {
       if (h->plt.refcount <= 0
-	  || (! info->shared
-	      && !h->def_dynamic
-	      && !h->ref_dynamic
-	      && h->root.type != bfd_link_hash_undefweak
-	      && h->root.type != bfd_link_hash_undefined))
+	  || SYMBOL_CALLS_LOCAL (info, h)
+	  || (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT
+	      && h->root.type != bfd_link_hash_undefweak))
 	{
 	  /* This case can occur if we saw a PLT32 reloc in an input
 	     file, but the symbol was never referred to by a dynamic
@@ -1709,9 +1707,7 @@ allocate_dynrelocs (h, inf)
   htab = elf_s390_hash_table (info);
 
   if (htab->elf.dynamic_sections_created
-      && h->plt.refcount > 0
-      && (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
-	  || h->root.type != bfd_link_hash_undefweak))
+      && h->plt.refcount > 0)
     {
       /* Make sure this symbol is output as a dynamic symbol.
 	 Undefined weak syms won't yet be marked as dynamic.  */
@@ -1840,7 +1836,7 @@ allocate_dynrelocs (h, inf)
 
   if (info->shared)
     {
-      if (SYMBOL_REFERENCES_LOCAL (info, h))
+      if (SYMBOL_CALLS_LOCAL (info, h))
 	{
 	  struct elf_s390_dyn_relocs **pp;
 
@@ -2364,10 +2360,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 	      dyn = htab->elf.dynamic_sections_created;
 	      if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info->shared, h)
 		  || (info->shared
-		      && (info->symbolic
-			  || h->dynindx == -1
-			  || h->forced_local)
-		      && h->def_regular)
+		      && SYMBOL_REFERENCES_LOCAL (info, h))
 		  || (ELF_ST_VISIBILITY (h->other)
 		      && h->root.type == bfd_link_hash_undefweak))
 		{
@@ -2537,8 +2530,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 		    && r_type != R_390_PC16DBL
 		    && r_type != R_390_PC32DBL
 		    && r_type != R_390_PC32)
-		   || (h != NULL
-		       && !SYMBOL_REFERENCES_LOCAL (info, h))))
+		   || !SYMBOL_CALLS_LOCAL (info, h)))
 	      || (ELIMINATE_COPY_RELOCS
 		  && !info->shared
 		  && h != NULL
@@ -2580,7 +2572,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 			   || r_type == R_390_PC32DBL
 			   || r_type == R_390_PC32
 			   || !info->shared
-			   || !info->symbolic
+			   || !SYMBOLIC_BIND (info, h)
 			   || !h->def_regular))
 		{
 		  outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
@@ -3262,11 +3254,10 @@ elf_s390_finish_dynamic_symbol (output_bfd, info, h, sym)
 	 The entry in the global offset table will already have been
 	 initialized in the relocate_section function.  */
       if (info->shared
-	  && (info->symbolic
-	      || h->dynindx == -1
-	      || h->forced_local)
-	  && h->def_regular)
+	  && SYMBOL_REFERENCES_LOCAL (info, h))
 	{
+	  if (!h->def_regular)
+	    return FALSE;
 	  BFD_ASSERT((h->got.offset & 1) != 0);
 	  rela.r_info = ELF32_R_INFO (0, R_390_RELATIVE);
 	  rela.r_addend = (h->root.u.def.value
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 1873728..ce82e16 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -2689,7 +2689,6 @@ get_opd_info (asection * sec)
 }
 \f
 /* Parameters for the qsort hook.  */
-static asection *synthetic_opd;
 static bfd_boolean synthetic_relocatable;
 
 /* qsort comparison function for ppc64_elf_get_synthetic_symtab.  */
@@ -2707,9 +2706,11 @@ compare_symbols (const void *ap, const void *bp)
     return 1;
 
   /* then .opd symbols.  */
-  if (a->section == synthetic_opd && b->section != synthetic_opd)
+  if (strcmp (a->section->name, ".opd") == 0
+      && strcmp (b->section->name, ".opd") != 0)
     return -1;
-  if (a->section != synthetic_opd && b->section == synthetic_opd)
+  if (strcmp (a->section->name, ".opd") != 0
+      && strcmp (b->section->name, ".opd") == 0)
     return 1;
 
   /* then other code symbols.  */
@@ -2863,7 +2864,6 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd,
   else
     memcpy (syms, static_syms, (symcount + 1) * sizeof (*syms));
 
-  synthetic_opd = opd;
   synthetic_relocatable = relocatable;
   qsort (syms, symcount, sizeof (*syms), compare_symbols);
 
@@ -2881,7 +2881,7 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd,
     }
 
   i = 0;
-  if (syms[i]->section == opd)
+  if (strcmp (syms[i]->section->name, ".opd") == 0)
     ++i;
   codesecsym = i;
 
@@ -2898,7 +2898,7 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd,
   secsymend = i;
 
   for (; i < symcount; ++i)
-    if (syms[i]->section != opd)
+    if (strcmp (syms[i]->section->name, ".opd") != 0)
       break;
   opdsymend = i;
 
diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c
index 7d8795e..21a5864 100644
--- a/bfd/elf64-s390.c
+++ b/bfd/elf64-s390.c
@@ -1228,7 +1228,7 @@ elf_s390_check_relocs (abfd, info, sec, relocs)
 		    && ELF64_R_TYPE (rel->r_info) != R_390_PC32DBL
 		    && ELF64_R_TYPE (rel->r_info) != R_390_PC64)
 		   || (h != NULL
-		       && (! info->symbolic
+		       && (! SYMBOLIC_BIND (info, h)
 			   || h->root.type == bfd_link_hash_defweak
 			   || !h->def_regular))))
 	      || (ELIMINATE_COPY_RELOCS
@@ -1541,11 +1541,9 @@ elf_s390_adjust_dynamic_symbol (info, h)
       || h->needs_plt)
     {
       if (h->plt.refcount <= 0
-	  || (! info->shared
-	      && !h->def_dynamic
-	      && !h->ref_dynamic
-	      && h->root.type != bfd_link_hash_undefweak
-	      && h->root.type != bfd_link_hash_undefined))
+	  || SYMBOL_CALLS_LOCAL (info, h)
+	  || (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT
+	      && h->root.type == bfd_link_hash_undefweak))
 	{
 	  /* This case can occur if we saw a PLT32 reloc in an input
 	     file, but the symbol was never referred to by a dynamic
@@ -1684,9 +1682,7 @@ allocate_dynrelocs (h, inf)
   htab = elf_s390_hash_table (info);
 
   if (htab->elf.dynamic_sections_created
-      && h->plt.refcount > 0
-      && (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
-	  || h->root.type != bfd_link_hash_undefweak))
+      && h->plt.refcount > 0)
     {
       /* Make sure this symbol is output as a dynamic symbol.
 	 Undefined weak syms won't yet be marked as dynamic.  */
@@ -1815,7 +1811,7 @@ allocate_dynrelocs (h, inf)
 
   if (info->shared)
     {
-      if (SYMBOL_REFERENCES_LOCAL (info, h))
+      if (SYMBOL_CALLS_LOCAL (info, h))
 	{
 	  struct elf_s390_dyn_relocs **pp;
 
@@ -2340,10 +2336,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 	      dyn = htab->elf.dynamic_sections_created;
 	      if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info->shared, h)
 		  || (info->shared
-		      && (info->symbolic
-			  || h->dynindx == -1
-			  || h->forced_local)
-		      && h->def_regular)
+		      && SYMBOL_REFERENCES_LOCAL (info, h))
 		  || (ELF_ST_VISIBILITY (h->other)
 		      && h->root.type == bfd_link_hash_undefweak))
 		{
@@ -2519,8 +2512,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 		    && r_type != R_390_PC32
 		    && r_type != R_390_PC32DBL
 		    && r_type != R_390_PC64)
-		   || (h != NULL
-		       && !SYMBOL_REFERENCES_LOCAL (info, h))))
+		   || !SYMBOL_CALLS_LOCAL (info, h)))
 	      || (ELIMINATE_COPY_RELOCS
 		  && !info->shared
 		  && h != NULL
@@ -2563,7 +2555,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 			   || r_type == R_390_PC32DBL
 			   || r_type == R_390_PC64
 			   || !info->shared
-			   || !info->symbolic
+			   || !SYMBOLIC_BIND (info, h)
 			   || !h->def_regular))
 		{
 		  outrel.r_info = ELF64_R_INFO (h->dynindx, r_type);
@@ -3168,11 +3160,10 @@ elf_s390_finish_dynamic_symbol (output_bfd, info, h, sym)
 	 The entry in the global offset table will already have been
 	 initialized in the relocate_section function.  */
       if (info->shared
-	  && (info->symbolic
-	      || h->dynindx == -1
-	      || h->forced_local)
-	  && h->def_regular)
+	  && SYMBOL_REFERENCES_LOCAL (info, h))
 	{
+	  if (!h->def_regular)
+	    return FALSE;
 	  BFD_ASSERT((h->got.offset & 1) != 0);
 	  rela.r_info = ELF64_R_INFO (0, R_390_RELATIVE);
 	  rela.r_addend = (h->root.u.def.value
diff --git a/bfd/version.h b/bfd/version.h
index 8fe3dcb..21bfd82 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20090319
+#define BFD_VERSION_DATE 20090324
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 107396e..a88bc6b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,490 @@
+2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* configure.ac: Initialize the variable $PREFER_CURSES.
+	* configure: Regenerated.
+
+2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
+


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


             reply	other threads:[~2009-03-27  0:35 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-27  0:35 jkratoch [this message]
  -- strict thread matches above, loose matches on Subject: below --
2009-06-26 13:51 jkratoch
2009-03-30 17:22 jkratoch
2009-03-29 22:42 jkratoch
2009-03-25 19:00 jkratoch
2009-03-24 17:33 jkratoch
2009-03-09 17:05 jkratoch
2009-03-06 16:59 jkratoch
2009-03-06 14:26 jkratoch
2009-03-05 21:53 jkratoch
2009-03-05 21:15 jkratoch
2009-03-04 23:54 jkratoch
2009-03-04 22:34 jkratoch
2009-03-04 15:02 jkratoch
2009-03-03 21:46 jkratoch
2009-03-03 21:45 jkratoch
2009-03-02 20:46 jkratoch
2009-03-01 14:38 jkratoch
2009-02-28 19:26 jkratoch
2009-02-26 23:01 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=20090327003500.627.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).