public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-18 19:53 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-18 19:53 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  79585a8eacfaa69b8e381d2dde48c310e97d8133 (commit)
       via  7b0b1c4357bf0c71641463c80e3605ef5b965429 (commit)
       via  6e427707c663a0870e72b8bf94aedeb9e0214dac (commit)
       via  15e2fc17321c28cbcca966786a96d6bbb426bc9c (commit)
      from  94fcf1fe5ccdc29f54984f37f2d0fbcd95d6c867 (commit)

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

- Log -----------------------------------------------------------------
commit 79585a8eacfaa69b8e381d2dde48c310e97d8133
Merge: 94fcf1f 7b0b1c4
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:53:26 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 7b0b1c4357bf0c71641463c80e3605ef5b965429
Merge: 24ea3d6 6e42770
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:53:25 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 6e427707c663a0870e72b8bf94aedeb9e0214dac
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:52:55 2016 +0100

    .

commit 15e2fc17321c28cbcca966786a96d6bbb426bc9c
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:47:00 2016 +0100

    .

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

Summary of changes:
 binutils/dwarf.c |   43 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 36 insertions(+), 7 deletions(-)

First 500 lines of diff:
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index fe07dd4..c80b056 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -1322,12 +1322,16 @@ decode_location_expression (unsigned char * data,
 	    print_dwarf_vma (addr, pointer_size);
 	  }
 	  break;
+	case DW_OP_implicit_pointer:
 	case DW_OP_GNU_implicit_pointer:
 	  /* XXX: Strictly speaking for 64-bit DWARF3 files
 	     this ought to be an 8-byte wide computation.  */
 	  if (dwarf_version == -1)
 	    {
-	      printf (_("(DW_OP_GNU_implicit_pointer in frame info)"));
+	      printf (_("(%s in frame info)"),
+		      (op == DW_OP_implicit_pointer
+		       ? "DW_OP_implicit_pointer"
+		       : "DW_OP_GNU_implicit_pointer"));
 	      /* No way to tell where the next op is, so just bail.  */
 	      return need_frame_base;
 	    }
@@ -1339,7 +1343,9 @@ decode_location_expression (unsigned char * data,
 	    {
 	      SAFE_BYTE_GET_AND_INC (uvalue, data, offset_size, end);
 	    }
-	  printf ("DW_OP_GNU_implicit_pointer: <0x%s> %s",
+	  printf ("%s: <0x%s> %s",
+		  (op == DW_OP_implicit_pointer
+		   ? "DW_OP_implicit_pointer" : "DW_OP_GNU_implicit_pointer"),
 		  dwarf_vmatoa ("x", uvalue),
 		  dwarf_vmatoa ("d", read_sleb128 (data,
 						   &bytes_read, end)));
@@ -1363,40 +1369,55 @@ decode_location_expression (unsigned char * data,
 	  if (data > end)
 	    data = end;
 	  break;
+	case DW_OP_const_type:
 	case DW_OP_GNU_const_type:
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
-	  printf ("DW_OP_GNU_const_type: <0x%s> ",
+	  printf ("%s: <0x%s> ",
+		  (op == DW_OP_const_type ? "DW_OP_const_type"
+					  : "DW_OP_GNU_const_type"),
 		  dwarf_vmatoa ("x", cu_offset + uvalue));
 	  SAFE_BYTE_GET_AND_INC (uvalue, data, 1, end);
 	  data = display_block (data, uvalue, end);
 	  break;
+	case DW_OP_regval_type:
 	case DW_OP_GNU_regval_type:
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
-	  printf ("DW_OP_GNU_regval_type: %s (%s)",
+	  printf ("%s: %s (%s)",
+		  (op == DW_OP_regval_type ? "DW_OP_regval_type"
+					   : "DW_OP_GNU_regval_type"),
 		  dwarf_vmatoa ("u", uvalue), regname (uvalue, 1));
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
 	  printf (" <0x%s>", dwarf_vmatoa ("x", cu_offset + uvalue));
 	  break;
+	case DW_OP_deref_type:
 	case DW_OP_GNU_deref_type:
 	  SAFE_BYTE_GET_AND_INC (uvalue, data, 1, end);
-	  printf ("DW_OP_GNU_deref_type: %ld", (long) uvalue);
+	  printf ("%s: %ld",
+		  (op == DW_OP_deref_type ? "DW_OP_deref_type"
+					  : "DW_OP_GNU_deref_type"),
+		  (long) uvalue);
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
 	  printf (" <0x%s>", dwarf_vmatoa ("x", cu_offset + uvalue));
 	  break;
+	case DW_OP_convert:
 	case DW_OP_GNU_convert:
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
-	  printf ("DW_OP_GNU_convert <0x%s>",
+	  printf ("%s <0x%s>",
+		  (op == DW_OP_convert ? "DW_OP_convert" : "DW_OP_GNU_convert"),
 		  dwarf_vmatoa ("x", uvalue ? cu_offset + uvalue : 0));
 	  break;
+	case DW_OP_reinterpret:
 	case DW_OP_GNU_reinterpret:
 	  uvalue = read_uleb128 (data, &bytes_read, end);
 	  data += bytes_read;
-	  printf ("DW_OP_GNU_reinterpret <0x%s>",
+	  printf ("%s <0x%s>",
+		  (op == DW_OP_reinterpret ? "DW_OP_reinterpret"
+					   : "DW_OP_GNU_reinterpret"),
 		  dwarf_vmatoa ("x", uvalue ? cu_offset + uvalue : 0));
 	  break;
 	case DW_OP_GNU_parameter_ref:
@@ -1910,9 +1931,13 @@ read_and_display_attr_value (unsigned long attribute,
 	case DW_AT_segment:
 	case DW_AT_static_link:
 	case DW_AT_use_location:
+	case DW_AT_call_value:
 	case DW_AT_GNU_call_site_value:
+	case DW_AT_call_data_value:
 	case DW_AT_GNU_call_site_data_value:
+	case DW_AT_call_target:
 	case DW_AT_GNU_call_site_target:
+	case DW_AT_call_target_clobbered:
 	case DW_AT_GNU_call_site_target_clobbered:
 	  if ((dwarf_version < 4
 	       && (form == DW_FORM_data4 || form == DW_FORM_data8))
@@ -2186,9 +2211,13 @@ read_and_display_attr_value (unsigned long attribute,
     case DW_AT_segment:
     case DW_AT_static_link:
     case DW_AT_use_location:
+    case DW_AT_call_value:
     case DW_AT_GNU_call_site_value:
+    case DW_AT_call_data_value:
     case DW_AT_GNU_call_site_data_value:
+    case DW_AT_call_target:
     case DW_AT_GNU_call_site_target:
+    case DW_AT_call_target_clobbered:
     case DW_AT_GNU_call_site_target_clobbered:
       if ((dwarf_version < 4
 	   && (form == DW_FORM_data4 || form == DW_FORM_data8))


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-23 22:20 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-23 22:20 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  0bbcf0c2b8370a7017bb066e672d213998cf7fc0 (commit)
       via  917a17106fee210a416dec50dbeb9e2bc7963ff5 (commit)
       via  d8867e1158aa05b40254f984697673f2e6d857c9 (commit)
       via  4ada4bde27923d6001693e127d7933a698265759 (commit)
       via  f68d00e8e02ab5996f03a5fc4950ddff3cf57e23 (commit)
       via  60c9cd86331981e7706afd4ec3f657fd34eaf155 (commit)
       via  7af7e6e2236cdbc34ec9dd0f96c0c52540379d7e (commit)
       via  7c755c932754eb7127866a352cf7c8e9ae88175f (commit)
       via  c7a53c67f07d742348e5d79e0f44c6a1c35b0b1f (commit)
       via  dcb07cfa156a8e9f768c7f2b5d32f27b6dfe939f (commit)
       via  7836e407c65761b003bfbcb7ce89947736330a15 (commit)
       via  8629c02c0db6ff3f7444397567a57dd36a3eed41 (commit)
       via  03b62bbbce3dc5f15131d9e78f77d035cd1cffb3 (commit)
       via  b593ecca856860a8b38deb808493bba4beef3aee (commit)
       via  1a9ccd70f9a75dc6b48d340059f28ef3550c107b (commit)
       via  128e85e3ab36b8e30f6612fb50de3cbb4ede6824 (commit)
       via  073808edb771952247c6fe634b863986b7627150 (commit)
       via  64f52338e924cce3a205527136e145da660a4686 (commit)
       via  ce558b89b15a18fd67fdc02a4d410a6d92d2ba63 (commit)
       via  3ae0486cdce5d2ed4c922c598a3258fcbd9c8f29 (commit)
       via  9986ba08876f86f7d36d230afc11b60a34287da8 (commit)
       via  4eefa7bcf286b879f61b9e1ec1c97230f5345104 (commit)
       via  400b2f29938dab7d9c4f46c9d1b0dc23dab0518b (commit)
       via  358a971863e93cbafa9e864b4db4d5448b960304 (commit)
       via  ca3cbe5cd7715d1559d55f8e71be1dd7340f13b1 (commit)
       via  96fe45624e51f1bb747e36cf8bdaab216f31c5ec (commit)
       via  f5ea389ac78ccd7c426a93f43e6117dad9ce0878 (commit)
       via  b2260160f8cde8de118914ddeaf797bea42e65ce (commit)
       via  fb090cfa157e35fac1c10c062fd005e38b894ea4 (commit)
       via  41e26ad32d17ee35f79f629654811f5e8656cab8 (commit)
       via  ad76968956f30bed6d120e0dfd247034e0855fea (commit)
       via  cd76b525eda02c30c4412698a2ff309b975d417a (commit)
       via  3889f4909e0db5f5ca8ca043ef9825f0ad971fd6 (commit)
       via  a8f341826d63a5c216c41e10bf1e4e6c3db3ce65 (commit)
       via  7113a196bac7f1134bcdd79ad3e6badcb5d77f95 (commit)
       via  5b6e2eee087cf206d5c2bf1f9523217aaf5938aa (commit)
       via  7ab2d0874025af6ee858b32c576f2461c0a1df3d (commit)
       via  0187a92f57b516f7171e70bec46701cfdaa6c6bd (commit)
       via  9fd15b2e80452f03edb3fb36c2b4c36d05f4ef4e (commit)
       via  6884417a0ff3555b192d4aceeacc5e7232cad207 (commit)
       via  c4b943d7aed5edbfc31aa1e9dc9e7bcf108d76a0 (commit)
       via  08dc996fedde9143cda25720961684087b133640 (commit)
       via  95f0d0d2338f8eba18d2b3c8cbe15b1d584b885c (commit)
       via  c5acd8159633cfde315b01431099e1ce5b23dcf7 (commit)
       via  3063babf7c559f04203ad7fdfcd8fc12a302ee7a (commit)
       via  c13b08dbbcf752480a7621aa1f89bc5440c74c25 (commit)
       via  d0de53e251ce60057d91536a4c71740b047be040 (commit)
       via  b32e1756d9932eebcca5f276290841a859ef2d6d (commit)
       via  b6ddcd85e3c0ae1f12af60efd6d1b97ac4bfa771 (commit)
       via  3fff9862d5229def9318912c2de64a03dab74532 (commit)
       via  5689c9424b33aac68c4762ce0bda09ca7e3affe0 (commit)
       via  2d7f2507d4d26430da7e32e8fc75f045f634fced (commit)
       via  081f6b931dbc4a1f27ac003e2f75a389444ce9e9 (commit)
      from  8419da695fd36101a0249a81b79f748f8612d8b4 (commit)

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

- Log -----------------------------------------------------------------
commit 0bbcf0c2b8370a7017bb066e672d213998cf7fc0
Merge: f68d00e 917a171
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 23:20:17 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 917a17106fee210a416dec50dbeb9e2bc7963ff5
Merge: 60c9cd8 d8867e1
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 23:20:16 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit d8867e1158aa05b40254f984697673f2e6d857c9
Merge: 7af7e6e 4ada4bd
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 23:20:16 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit 4ada4bde27923d6001693e127d7933a698265759
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 23:20:13 2016 +0100

    .

commit f68d00e8e02ab5996f03a5fc4950ddff3cf57e23
Merge: 8419da6 60c9cd8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 22:35:53 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 60c9cd86331981e7706afd4ec3f657fd34eaf155
Merge: cad7746 7af7e6e
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 22:35:52 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 7af7e6e2236cdbc34ec9dd0f96c0c52540379d7e
Merge: 75c3663 7c755c9
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 22:35:51 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit 7c755c932754eb7127866a352cf7c8e9ae88175f
Merge: b827d12 c7a53c6
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 23 22:35:49 2016 +0100

    Merge branch 'dwarf5gcc' into dwarf5gcc-gdb

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

Summary of changes:
 bfd/ChangeLog                                   |  416 ++++++
 bfd/configure                                   |    4 +-
 bfd/configure.ac                                |    2 +-
 bfd/dwarf2.c                                    |   20 +-
 bfd/elf-bfd.h                                   |    9 +
 bfd/elf-m10300.c                                |   66 +-
 bfd/elf.c                                       |  125 ++-
 bfd/elf32-arc.c                                 |   10 +-
 bfd/elf32-arm.c                                 |   29 +-
 bfd/elf32-bfin.c                                |   88 +-
 bfd/elf32-cr16.c                                |   80 +-
 bfd/elf32-cris.c                                |  147 +--
 bfd/elf32-frv.c                                 |   31 +-
 bfd/elf32-hppa.c                                |  194 ++--
 bfd/elf32-i370.c                                |   44 +-
 bfd/elf32-i386.c                                |   26 +-
 bfd/elf32-lm32.c                                |  128 +--
 bfd/elf32-m32c.c                                |   37 +-
 bfd/elf32-m32r.c                                |  114 +--
 bfd/elf32-m68k.c                                |  130 +--
 bfd/elf32-metag.c                               |  204 ++--
 bfd/elf32-microblaze.c                          |  282 ++---
 bfd/elf32-mips.c                                |    2 +
 bfd/elf32-nds32.c                               |  136 +--
 bfd/elf32-nds32.h                               |    5 -
 bfd/elf32-nios2.c                               |   15 +-
 bfd/elf32-or1k.c                                |  138 +--
 bfd/elf32-ppc.c                                 |  503 ++++----
 bfd/elf32-ppc.h                                 |    3 +
 bfd/elf32-rl78.c                                |   36 +-
 bfd/elf32-s390.c                                |   27 +-
 bfd/elf32-score.c                               |    7 +-
 bfd/elf32-score7.c                              |   16 +-
 bfd/elf32-sh.c                                  |  161 +--
 bfd/elf32-sparc.c                               |    2 +
 bfd/elf32-tic6x.c                               |    6 +-
 bfd/elf32-tilepro.c                             |    3 +-
 bfd/elf32-vax.c                                 |  105 +--
 bfd/elf32-xstormy16.c                           |   40 +-
 bfd/elf32-xtensa.c                              |   93 +-
 bfd/elf64-alpha.c                               |   51 +-
 bfd/elf64-hppa.c                                |   34 +-
 bfd/elf64-ppc.c                                 |   86 +-
 bfd/elf64-s390.c                                |   30 +-
 bfd/elf64-sh64.c                                |  116 +--
 bfd/elf64-x86-64.c                              |   16 +-
 bfd/elfcode.h                                   |    4 +-
 bfd/elflink.c                                   |   75 +-
 bfd/elfnn-aarch64.c                             |   19 +-
 bfd/elfnn-ia64.c                                |   19 +-
 bfd/elfnn-riscv.c                               |    3 +-
 bfd/elfxx-mips.c                                |  184 ++--
 bfd/elfxx-sparc.c                               |   53 +-
 bfd/elfxx-target.h                              |   10 +
 bfd/elfxx-tilegx.c                              |    3 +-
 bfd/po/BLD-POTFILES.in                          |    2 +
 bfd/po/SRC-POTFILES.in                          |    2 +
 bfd/version.h                                   |    2 +-
 bfd/warning.m4                                  |    2 +-
 binutils/ChangeLog                              |   15 +
 binutils/NEWS                                   |   15 +-
 binutils/configure                              |    2 +-
 binutils/dwarf.c                                |   12 +-
 binutils/readelf.c                              |   41 +-
 gas/ChangeLog                                   |   62 +
 gas/Makefile.am                                 |   18 +-
 gas/Makefile.in                                 |   19 +-
 gas/config/tc-arm.c                             |    7 +-
 gas/config/tc-ppc.c                             |   20 +-
 gas/config/tc-riscv.c                           |    1 +
 gas/config/tc-sparc.c                           |  112 +-
 gas/configure                                   |   37 +-
 gas/configure.ac                                |    1 +
 gas/doc/Makefile.in                             |    1 +
 gas/po/POTFILES.in                              |    2 +
 gas/testsuite/gas/arc/b.d                       |    4 +-
 gas/testsuite/gas/arm/add-shift-two.d           |   11 +
 gas/testsuite/gas/arm/add-shift-two.s           |    5 +
 gas/testsuite/gas/ppc/vle-reloc.d               |  146 +-
 gas/testsuite/gas/sparc/hwcaps-bump.l           |    2 +
 gas/testsuite/gas/sparc/hwcaps-bump.s           |    5 +
 gas/testsuite/gas/sparc/sparc.exp               |    1 +
 gdb/ChangeLog                                   |  428 ++++++
 gdb/Makefile.in                                 | 1640 +++++++++++++++++------
 gdb/aarch64-tdep.c                              |    6 +-
 gdb/{alphabsd-nat.c => alpha-bsd-nat.c}         |    2 +-
 gdb/{alphabsd-tdep.c => alpha-bsd-tdep.c}       |    2 +-
 gdb/{alphabsd-tdep.h => alpha-bsd-tdep.h}       |    8 +-
 gdb/{alphafbsd-tdep.c => alpha-fbsd-tdep.c}     |    0
 gdb/{alphanbsd-tdep.c => alpha-nbsd-tdep.c}     |    2 +-
 gdb/{alphaobsd-tdep.c => alpha-obsd-tdep.c}     |    2 +-
 gdb/alpha-tdep.c                                |   22 +-
 gdb/alpha-tdep.h                                |    2 +-
 gdb/{amd64bsd-nat.c => amd64-bsd-nat.c}         |    2 +-
 gdb/{amd64fbsd-nat.c => amd64-fbsd-nat.c}       |    4 +-
 gdb/{amd64fbsd-tdep.c => amd64-fbsd-tdep.c}     |    2 +-
 gdb/{amd64nbsd-nat.c => amd64-nbsd-nat.c}       |    0
 gdb/{amd64nbsd-tdep.c => amd64-nbsd-tdep.c}     |    0
 gdb/{amd64obsd-nat.c => amd64-obsd-nat.c}       |    0
 gdb/{amd64obsd-tdep.c => amd64-obsd-tdep.c}     |    0
 gdb/amd64-tdep.h                                |    6 +-
 gdb/{armbsd-tdep.c => arm-bsd-tdep.c}           |    0
 gdb/arm-linux-tdep.c                            |    3 +-
 gdb/{armnbsd-nat.c => arm-nbsd-nat.c}           |    0
 gdb/{armnbsd-tdep.c => arm-nbsd-tdep.c}         |    0
 gdb/{armobsd-tdep.c => arm-obsd-tdep.c}         |    0
 gdb/arm-tdep.c                                  |    3 +-
 gdb/arm-tdep.h                                  |    4 +-
 gdb/breakpoint.c                                |    5 +-
 gdb/common/run-time-clock.c                     |   58 +
 gdb/common/run-time-clock.h                     |   75 +
 gdb/config/alpha/fbsd.mh                        |    2 +-
 gdb/config/alpha/nbsd.mh                        |    2 +-
 gdb/config/arm/nbsdelf.mh                       |    2 +-
 gdb/config/djgpp/fnchange.lst                   |   96 +-
 gdb/config/i386/fbsd.mh                         |    4 +-
 gdb/config/i386/fbsd64.mh                       |    4 +-
 gdb/config/i386/i386gnu.mh                      |    2 +-
 gdb/config/i386/i386sol2.mh                     |    2 +-
 gdb/config/i386/nbsd64.mh                       |    2 +-
 gdb/config/i386/nbsdelf.mh                      |    2 +-
 gdb/config/i386/obsd.mh                         |    2 +-
 gdb/config/i386/obsd64.mh                       |    2 +-
 gdb/config/i386/sol2-64.mh                      |    2 +-
 gdb/config/m68k/linux.mh                        |    2 +-
 gdb/config/m68k/nbsdelf.mh                      |    2 +-
 gdb/config/m68k/obsd.mh                         |    2 +-
 gdb/config/m88k/obsd.mh                         |    2 +-
 gdb/config/mips/nbsd.mh                         |    2 +-
 gdb/config/mips/obsd64.mh                       |    2 +-
 gdb/config/pa/nbsd.mh                           |    2 +-
 gdb/config/pa/obsd.mh                           |    2 +-
 gdb/config/powerpc/fbsd.mh                      |    2 +-
 gdb/config/powerpc/nbsd.mh                      |    2 +-
 gdb/config/powerpc/obsd.mh                      |    2 +-
 gdb/config/sh/nbsd.mh                           |    2 +-
 gdb/config/sparc/fbsd.mh                        |    2 +-
 gdb/config/sparc/nbsd64.mh                      |    2 +-
 gdb/config/sparc/nbsdelf.mh                     |    2 +-
 gdb/config/sparc/obsd64.mh                      |    2 +-
 gdb/config/vax/nbsdelf.mh                       |    2 +-
 gdb/config/vax/obsd.mh                          |    2 +-
 gdb/configure                                   |    2 +-
 gdb/configure.ac                                |    2 +-
 gdb/configure.tgt                               |   80 +-
 gdb/contrib/expect-read1.sh                     |    2 +-
 gdb/cris-tdep.c                                 |   14 +-
 gdb/data-directory/Makefile.in                  |   39 +-
 gdb/defs.h                                      |   14 -
 gdb/event-loop.c                                |   94 +-
 gdb/gdb_buildall.sh                             |    2 +-
 gdb/gdb_mbuild.sh                               |    4 +-
 gdb/gdbarch.c                                   |    4 +-
 gdb/gdbarch.h                                   |    4 +-
 gdb/gdbarch.sh                                  |    2 +-
 gdb/gdbserver/ChangeLog                         |   36 +
 gdb/gdbserver/Makefile.in                       |  170 ++-
 gdb/gdbserver/debug.c                           |   16 +-
 gdb/gdbserver/event-loop.c                      |    2 +-
 gdb/gdbserver/linux-low.c                       |   13 +-
 gdb/gdbserver/mem-break.c                       |    6 +-
 gdb/gdbserver/notif.c                           |    8 +-
 gdb/gdbserver/remote-utils.c                    |   32 +-
 gdb/gdbserver/server.c                          |   17 +-
 gdb/gdbserver/thread-db.c                       |    3 +-
 gdb/gdbserver/tracepoint.c                      |   10 +-
 gdb/guile/scm-pretty-print.c                    |   11 +-
 gdb/{hppabsd-tdep.c => hppa-bsd-tdep.c}         |    2 +-
 gdb/{hppabsd-tdep.h => hppa-bsd-tdep.h}         |    6 +-
 gdb/{hppanbsd-nat.c => hppa-nbsd-nat.c}         |    0
 gdb/{hppanbsd-tdep.c => hppa-nbsd-tdep.c}       |    2 +-
 gdb/{hppaobsd-nat.c => hppa-obsd-nat.c}         |    0
 gdb/{hppaobsd-tdep.c => hppa-obsd-tdep.c}       |    2 +-
 gdb/{i386bsd-nat.c => i386-bsd-nat.c}           |    6 +-
 gdb/{i386bsd-nat.h => i386-bsd-nat.h}           |    6 +-
 gdb/{i386bsd-tdep.c => i386-bsd-tdep.c}         |    0
 gdb/{i386fbsd-nat.c => i386-fbsd-nat.c}         |    4 +-
 gdb/{i386fbsd-tdep.c => i386-fbsd-tdep.c}       |    2 +-
 gdb/{i386fbsd-tdep.h => i386-fbsd-tdep.h}       |    6 +-
 gdb/{i386gnu-nat.c => i386-gnu-nat.c}           |    0
 gdb/{i386gnu-tdep.c => i386-gnu-tdep.c}         |    0
 gdb/{i386nbsd-nat.c => i386-nbsd-nat.c}         |    2 +-
 gdb/{i386nbsd-tdep.c => i386-nbsd-tdep.c}       |    0
 gdb/{i386obsd-nat.c => i386-obsd-nat.c}         |    2 +-
 gdb/{i386obsd-tdep.c => i386-obsd-tdep.c}       |    0
 gdb/i386-tdep.h                                 |    2 +-
 gdb/{i386v4-nat.c => i386-v4-nat.c}             |    0
 gdb/{m68kbsd-nat.c => m68k-bsd-nat.c}           |    0
 gdb/{m68kbsd-tdep.c => m68k-bsd-tdep.c}         |    0
 gdb/{m68klinux-nat.c => m68k-linux-nat.c}       |    0
 gdb/{m68klinux-tdep.c => m68k-linux-tdep.c}     |    0
 gdb/m68k-tdep.h                                 |    2 +-
 gdb/{m88kbsd-nat.c => m88k-bsd-nat.c}           |    0
 gdb/maint.c                                     |   31 +-
 gdb/maint.h                                     |    7 +-
 gdb/mi/mi-main.c                                |   73 +-
 gdb/mi/mi-parse.h                               |   12 +-
 gdb/{mipsnbsd-nat.c => mips-nbsd-nat.c}         |    2 +-
 gdb/{mipsnbsd-tdep.c => mips-nbsd-tdep.c}       |    2 +-
 gdb/{mipsnbsd-tdep.h => mips-nbsd-tdep.h}       |    6 +-
 gdb/mips-tdep.c                                 |  141 +-
 gdb/mips-tdep.h                                 |    2 +-
 gdb/{mips64obsd-nat.c => mips64-obsd-nat.c}     |    0
 gdb/{mips64obsd-tdep.c => mips64-obsd-tdep.c}   |    0
 gdb/moxie-tdep.c                                |    7 +-
 gdb/nios2-tdep.c                                |   26 +-
 gdb/{ppcfbsd-nat.c => ppc-fbsd-nat.c}           |    2 +-
 gdb/{ppcfbsd-tdep.c => ppc-fbsd-tdep.c}         |    2 +-
 gdb/{ppcfbsd-tdep.h => ppc-fbsd-tdep.h}         |    8 +-
 gdb/{ppcnbsd-nat.c => ppc-nbsd-nat.c}           |    2 +-
 gdb/{ppcnbsd-tdep.c => ppc-nbsd-tdep.c}         |    2 +-
 gdb/{ppcnbsd-tdep.h => ppc-nbsd-tdep.h}         |    6 +-
 gdb/{ppcobsd-nat.c => ppc-obsd-nat.c}           |    2 +-
 gdb/{ppcobsd-tdep.c => ppc-obsd-tdep.c}         |    2 +-
 gdb/{ppcobsd-tdep.h => ppc-obsd-tdep.h}         |    6 +-
 gdb/ppc-tdep.h                                  |    2 +-
 gdb/python/py-prettyprint.c                     |   11 +-
 gdb/regcache.c                                  |   13 +
 gdb/regcache.h                                  |    6 +
 gdb/rs6000-aix-tdep.c                           |   35 +-
 gdb/rs6000-tdep.c                               |    7 +-
 gdb/s390-linux-tdep.c                           |    7 +-
 gdb/{shnbsd-nat.c => sh-nbsd-nat.c}             |    0
 gdb/{shnbsd-tdep.c => sh-nbsd-tdep.c}           |    0
 gdb/{sparcnbsd-nat.c => sparc-nbsd-nat.c}       |    0
 gdb/{sparcnbsd-tdep.c => sparc-nbsd-tdep.c}     |    0
 gdb/{sparcobsd-tdep.c => sparc-obsd-tdep.c}     |    0
 gdb/sparc-tdep.c                                |   18 +-
 gdb/{sparc64fbsd-nat.c => sparc64-fbsd-nat.c}   |    0
 gdb/{sparc64fbsd-tdep.c => sparc64-fbsd-tdep.c} |    0
 gdb/{sparc64nbsd-nat.c => sparc64-nbsd-nat.c}   |    0
 gdb/{sparc64nbsd-tdep.c => sparc64-nbsd-tdep.c} |    0
 gdb/{sparc64obsd-nat.c => sparc64-obsd-nat.c}   |    0
 gdb/{sparc64obsd-tdep.c => sparc64-obsd-tdep.c} |    0
 gdb/sparc64-tdep.h                              |    4 +-
 gdb/spu-tdep.c                                  |   10 +-
 gdb/symfile.c                                   |   39 +-
 gdb/testsuite/ChangeLog                         |    4 +
 gdb/testsuite/gdb.base/default.exp              |    2 +-
 gdb/tic6x-tdep.c                                |   24 +-
 gdb/utils.c                                     |   58 +-
 gdb/utils.h                                     |    3 +-
 gdb/valarith.c                                  |   17 +-
 gdb/value.c                                     |   25 +
 gdb/value.h                                     |    2 +
 gdb/{vaxbsd-nat.c => vax-bsd-nat.c}             |    0
 gdb/{vaxnbsd-tdep.c => vax-nbsd-tdep.c}         |    0
 gdb/{vaxobsd-tdep.c => vax-obsd-tdep.c}         |    0
 gdb/{x86bsd-nat.c => x86-bsd-nat.c}             |    2 +-
 gdb/{x86bsd-nat.h => x86-bsd-nat.h}             |    6 +-
 gold/ChangeLog                                  |   27 +
 gold/configure                                  |    2 +-
 gold/gold.cc                                    |   16 +-
 gold/layout.cc                                  |   25 +
 gold/options.cc                                 |    8 +-
 gold/options.h                                  |  522 +++++---
 gprof/ChangeLog                                 |    4 +
 gprof/configure                                 |    2 +-
 include/ChangeLog                               |   10 +
 include/opcode/ppc.h                            |   17 +
 include/opcode/sparc.h                          |    4 +
 ld/ChangeLog                                    |   53 +
 ld/configure                                    |    2 +-
 ld/emultempl/ppc32elf.em                        |   11 +-
 ld/ld.texinfo                                   |    3 +
 ld/testsuite/ld-arm/vxworks2.sd                 |    2 +-
 ld/testsuite/ld-discard/discard.ld              |    1 +
 ld/testsuite/ld-elf/ehdr_start-missing.d        |    2 +-
 ld/testsuite/ld-elf/ehdr_start-weak.d           |    2 +-
 ld/testsuite/ld-elf/elf.exp                     |    4 +-
 ld/testsuite/ld-elf/flags1.d                    |    1 +
 ld/testsuite/ld-elf/flags1.ld                   |    1 +
 ld/testsuite/ld-elf/group.ld                    |    8 +-
 ld/testsuite/ld-elf/loadaddr1.d                 |    2 +-
 ld/testsuite/ld-elf/maxpage3.t                  |    1 +
 ld/testsuite/ld-elf/noload-1.t                  |    1 +
 ld/testsuite/ld-elf/noload-2.d                  |    2 +-
 ld/testsuite/ld-elf/orphan.ld                   |    1 +
 ld/testsuite/ld-elf/overlay.d                   |    2 +
 ld/testsuite/ld-elf/overlay.t                   |    3 +-
 ld/testsuite/ld-elf/pr14052.t                   |    1 +
 ld/testsuite/ld-elf/pr19162.d                   |    2 +-
 ld/testsuite/ld-elf/pr19539.d                   |    2 +-
 ld/testsuite/ld-elf/pr19539.t                   |    5 +
 ld/testsuite/ld-elf/provide-hidden-1.ld         |    1 +
 ld/testsuite/ld-elf/provide-hidden-s.ld         |    1 +
 ld/testsuite/ld-elf/weak-dyn-1.ld               |    1 +
 ld/testsuite/ld-i386/pr19539.t                  |    5 +
 ld/testsuite/ld-powerpc/vxworks2.sd             |    2 +-
 ld/testsuite/ld-scripts/defined.t               |    1 +
 ld/testsuite/ld-scripts/defined6.t              |    1 +
 ld/testsuite/ld-scripts/dynamic-sections.t      |    1 +
 ld/testsuite/ld-scripts/empty-aligned.t         |    1 +
 ld/testsuite/ld-scripts/empty-orphan.t          |    6 +-
 ld/testsuite/ld-scripts/phdrs3a.d               |    2 +-
 ld/testsuite/ld-scripts/provide-2.t             |    1 +
 ld/testsuite/ld-scripts/provide-4.t             |    1 +
 ld/testsuite/ld-scripts/size-2.d                |    4 +-
 ld/testsuite/ld-scripts/size-2.t                |    4 +-
 ld/testsuite/ld-vax-elf/plt-local.ld            |    2 +-
 ld/testsuite/ld-x86-64/pr19539.t                |    5 +
 opcodes/ChangeLog                               |   25 +
 opcodes/arc-tbl.h                               |    2 +-
 opcodes/configure                               |    2 +-
 opcodes/sparc-opc.c                             |   49 +-
 305 files changed, 5405 insertions(+), 3898 deletions(-)
 create mode 100644 gas/testsuite/gas/arm/add-shift-two.d
 create mode 100644 gas/testsuite/gas/arm/add-shift-two.s
 create mode 100644 gas/testsuite/gas/sparc/hwcaps-bump.l
 create mode 100644 gas/testsuite/gas/sparc/hwcaps-bump.s
 rename gdb/{alphabsd-nat.c => alpha-bsd-nat.c} (99%)
 rename gdb/{alphabsd-tdep.c => alpha-bsd-tdep.c} (98%)
 rename gdb/{alphabsd-tdep.h => alpha-bsd-tdep.h} (91%)
 rename gdb/{alphafbsd-tdep.c => alpha-fbsd-tdep.c} (100%)
 rename gdb/{alphanbsd-tdep.c => alpha-nbsd-tdep.c} (99%)
 rename gdb/{alphaobsd-tdep.c => alpha-obsd-tdep.c} (99%)
 rename gdb/{amd64bsd-nat.c => amd64-bsd-nat.c} (99%)
 rename gdb/{amd64fbsd-nat.c => amd64-fbsd-nat.c} (98%)
 rename gdb/{amd64fbsd-tdep.c => amd64-fbsd-tdep.c} (99%)
 rename gdb/{amd64nbsd-nat.c => amd64-nbsd-nat.c} (100%)
 rename gdb/{amd64nbsd-tdep.c => amd64-nbsd-tdep.c} (100%)
 rename gdb/{amd64obsd-nat.c => amd64-obsd-nat.c} (100%)
 rename gdb/{amd64obsd-tdep.c => amd64-obsd-tdep.c} (100%)
 rename gdb/{armbsd-tdep.c => arm-bsd-tdep.c} (100%)
 rename gdb/{armnbsd-nat.c => arm-nbsd-nat.c} (100%)
 rename gdb/{armnbsd-tdep.c => arm-nbsd-tdep.c} (100%)
 rename gdb/{armobsd-tdep.c => arm-obsd-tdep.c} (100%)
 create mode 100644 gdb/common/run-time-clock.c
 create mode 100644 gdb/common/run-time-clock.h
 mode change 100644 => 100755 gdb/contrib/expect-read1.sh
 rename gdb/{hppabsd-tdep.c => hppa-bsd-tdep.c} (99%)
 rename gdb/{hppabsd-tdep.h => hppa-bsd-tdep.h} (91%)
 rename gdb/{hppanbsd-nat.c => hppa-nbsd-nat.c} (100%)
 rename gdb/{hppanbsd-tdep.c => hppa-nbsd-tdep.c} (99%)
 rename gdb/{hppaobsd-nat.c => hppa-obsd-nat.c} (100%)
 rename gdb/{hppaobsd-tdep.c => hppa-obsd-tdep.c} (99%)
 rename gdb/{i386bsd-nat.c => i386-bsd-nat.c} (98%)
 rename gdb/{i386bsd-nat.h => i386-bsd-nat.h} (92%)
 rename gdb/{i386bsd-tdep.c => i386-bsd-tdep.c} (100%)
 rename gdb/{i386fbsd-nat.c => i386-fbsd-nat.c} (99%)
 rename gdb/{i386fbsd-tdep.c => i386-fbsd-tdep.c} (99%)
 rename gdb/{i386fbsd-tdep.h => i386-fbsd-tdep.h} (93%)
 rename gdb/{i386gnu-nat.c => i386-gnu-nat.c} (100%)
 rename gdb/{i386gnu-tdep.c => i386-gnu-tdep.c} (100%)
 rename gdb/{i386nbsd-nat.c => i386-nbsd-nat.c} (99%)
 rename gdb/{i386nbsd-tdep.c => i386-nbsd-tdep.c} (100%)
 rename gdb/{i386obsd-nat.c => i386-obsd-nat.c} (99%)
 rename gdb/{i386obsd-tdep.c => i386-obsd-tdep.c} (100%)
 rename gdb/{i386v4-nat.c => i386-v4-nat.c} (100%)
 rename gdb/{m68kbsd-nat.c => m68k-bsd-nat.c} (100%)
 rename gdb/{m68kbsd-tdep.c => m68k-bsd-tdep.c} (100%)
 rename gdb/{m68klinux-nat.c => m68k-linux-nat.c} (100%)
 rename gdb/{m68klinux-tdep.c => m68k-linux-tdep.c} (100%)
 rename gdb/{m88kbsd-nat.c => m88k-bsd-nat.c} (100%)
 rename gdb/{mipsnbsd-nat.c => mips-nbsd-nat.c} (99%)
 rename gdb/{mipsnbsd-tdep.c => mips-nbsd-tdep.c} (99%)
 rename gdb/{mipsnbsd-tdep.h => mips-nbsd-tdep.h} (93%)
 rename gdb/{mips64obsd-nat.c => mips64-obsd-nat.c} (100%)
 rename gdb/{mips64obsd-tdep.c => mips64-obsd-tdep.c} (100%)
 rename gdb/{ppcfbsd-nat.c => ppc-fbsd-nat.c} (99%)
 rename gdb/{ppcfbsd-tdep.c => ppc-fbsd-tdep.c} (99%)
 rename gdb/{ppcfbsd-tdep.h => ppc-fbsd-tdep.h} (89%)
 rename gdb/{ppcnbsd-nat.c => ppc-nbsd-nat.c} (99%)
 rename gdb/{ppcnbsd-tdep.c => ppc-nbsd-tdep.c} (99%)
 rename gdb/{ppcnbsd-tdep.h => ppc-nbsd-tdep.h} (93%)
 rename gdb/{ppcobsd-nat.c => ppc-obsd-nat.c} (99%)
 rename gdb/{ppcobsd-tdep.c => ppc-obsd-tdep.c} (99%)
 rename gdb/{ppcobsd-tdep.h => ppc-obsd-tdep.h} (95%)
 rename gdb/{shnbsd-nat.c => sh-nbsd-nat.c} (100%)
 rename gdb/{shnbsd-tdep.c => sh-nbsd-tdep.c} (100%)
 rename gdb/{sparcnbsd-nat.c => sparc-nbsd-nat.c} (100%)
 rename gdb/{sparcnbsd-tdep.c => sparc-nbsd-tdep.c} (100%)
 rename gdb/{sparcobsd-tdep.c => sparc-obsd-tdep.c} (100%)
 rename gdb/{sparc64fbsd-nat.c => sparc64-fbsd-nat.c} (100%)
 rename gdb/{sparc64fbsd-tdep.c => sparc64-fbsd-tdep.c} (100%)
 rename gdb/{sparc64nbsd-nat.c => sparc64-nbsd-nat.c} (100%)
 rename gdb/{sparc64nbsd-tdep.c => sparc64-nbsd-tdep.c} (100%)
 rename gdb/{sparc64obsd-nat.c => sparc64-obsd-nat.c} (100%)
 rename gdb/{sparc64obsd-tdep.c => sparc64-obsd-tdep.c} (100%)
 rename gdb/{vaxbsd-nat.c => vax-bsd-nat.c} (100%)
 rename gdb/{vaxnbsd-tdep.c => vax-nbsd-tdep.c} (100%)
 rename gdb/{vaxobsd-tdep.c => vax-obsd-tdep.c} (100%)
 rename gdb/{x86bsd-nat.c => x86-bsd-nat.c} (99%)
 rename gdb/{x86bsd-nat.h => x86-bsd-nat.h} (93%)

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f28351d..346ff29 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,419 @@
+2016-11-23  Nick Clifton  <nickc@redhat.com>
+
+	PR ld/20815
+	* elf.c (elf_modify_segment_map): Allow empty LOAD segments if
+	they contain the program headers.
+	(_bfd_elf_map_sections_to_segments): If the linker created the
+	PHDR segment then always attempt to include it in a LOAD segment.
+	(assign_file_positions_for_non_load_sections): Allow LOAD segments
+	to overlap PHDR segments.
+	(phdr_sorter): New function.  Sorts program headers.
+	(assign_file_positions_except_relocs): Sort the program headers
+	before writing them out.  Issue an error if the PHDR segment is
+	not covered by a LOAD segment, unless the backend allows it.
+	* elf-bfd.h (struct elf_backend_data): Add
+	elf_backend_allow_non_load_phdr.
+	* elfxx-target.h (elf_backend_allow_non_load_phdr): Provide
+	default definition that returns FALSE.
+	(elfNN_bed): Initialise the elf_backend_allow_non_load_phdr
+	field.
+	* elf64-hppa.c (elf64_hppa_allow_non_load_phdr): New function.
+	Returns TRUE.
+	(elf_backend_allow_non_load_phdr): Define.
+	* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Do not
+	place the interpreter string into the .interp section if the
+	nointerp flag is set in the link info structure.
+	* elf32-arc.c (elf_arc_size_dynamic_sections): Likewise.
+	* elf32-score7.c (score_elf_final_link_relocate): Allow for the
+	_gp symbol not being part of the output.
+
+2016-11-23  Alan Modra  <amodra@gmail.com>
+
+	* elf-bfd.h (struct elf_backend_data): Add dtrel_excludes_plt.
+	* elfxx-target.h (elf_backend_dtrel_excludes_plt): Define.
+	(elfNN_bed): Init new field.
+	* elflink.c (bfd_elf_final_link): Add and use htab variable.  Handle
+	dtrel_excludes_plt.
+	* elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Delete
+	DT_RELASZ code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-arc.c (elf_arc_finish_dynamic_sections): Delete DT_RELASZ code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-arm.c (elf32_arm_finish_dynamic_sections): Delete code
+	subtracting off plt relocs from DT_RELSZ, DT_RELASZ.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Delete
+	DT_RELASZ code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-cris.c (elf_cris_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Delete DT_RELASZ
+	and DT_RELA code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-i386.c (elf_i386_finish_dynamic_sections): Delete DT_RELSZ
+	and DT_REL code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-lm32.c (lm32_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-m32r.c (m32r_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-m68k.c (elf_m68k_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-metag.c (elf_metag_finish_dynamic_sections): Delete DT_RELASZ
+	and DT_RELA code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Delete
+	DT_RELASZ and DT_RELA code.  Use ELF htab shortcuts for other
+	dynamic sections.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-mips.c (elf_backend_dtrel_excludes_plt): Define.
+	* elf32-nds32.c (nds32_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-or1k.c (or1k_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-ppc.c (ppc_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-sh.c (sh_elf_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-sparc.c (elf_backend_dtrel_excludes_plt): Define.
+	* elf32-vax.c (elf_vax_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Delete DT_RELASZ
+	and DT_RELA code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Delete
+	DT_RELASZ code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elfnn-ia64.c (elfNN_ia64_finish_dynamic_sections): Delete DT_RELASZ
+	code.
+	(elf_backend_dtrel_excludes_plt): Define.
+	* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Delete
+	DT_RELASZ code.
+	* elfxx-sparc.c (sparc_finish_dyn): Delete DT_RELASZ code.
+
+2016-11-23  Alan Modra  <amodra@gmail.com>
+
+	* elf-m10300.c (mn10300_elf_check_relocs): Use elf htab shortcuts
+	to dynamic sections.
+	(mn10300_elf_final_link_relocate): Likewise.
+	(_bfd_mn10300_elf_adjust_dynamic_symbol): Likewise.
+	(_bfd_mn10300_elf_size_dynamic_sections): Likewise.
+	(_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
+	(_bfd_mn10300_elf_finish_dynamic_sections): Likewise.
+	* elf32-bfin.c (bfin_check_relocs): Likewise.
+	(bfin_relocate_section): Likewise.
+	(bfin_gc_sweep_hook): Likewise.
+	(struct bfinfdpic_elf_link_hash_table): Delete sgot, sgotrel, splt
+	and spltrel.
+	(bfinfdpic_got_section, bfinfdpic_gotrel_section,
+	bfinfdpic_plt_section, bfinfdpic_pltrel_section): Define using elf
+	shortcut sections.
+	(_bfin_create_got_section): Use elf htab shortcuts to dyn sections.
+	Delete dead code.
+	(bfin_finish_dynamic_symbol): Use elf htab shortcuts to dyn sections.
+	(bfin_size_dynamic_sections): Likewise.
+	* elf32-cr16.c (_bfd_cr16_elf_create_got_section): Likewise.
+	(cr16_elf_check_relocs): Likewise.
+	(cr16_elf_final_link_relocate): Likewise.
+	(_bfd_cr16_elf_create_dynamic_sections): Likewise.
+	(_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
+	(_bfd_cr16_elf_size_dynamic_sections): Likewise.
+	(_bfd_cr16_elf_finish_dynamic_symbol): Likewise.
+	(_bfd_cr16_elf_finish_dynamic_sections): Likewise.
+	* elf32-cris.c (cris_elf_relocate_section): Likewise.
+	(elf_cris_finish_dynamic_symbol): Likewise.
+	(elf_cris_finish_dynamic_sections): Likewise.
+	(cris_elf_gc_sweep_hook): Likewise.
+	(elf_cris_adjust_gotplt_to_got): Likewise.
+	(elf_cris_adjust_dynamic_symbol): Likewise.
+	(cris_elf_check_relocs): Likewise.  Delete dead code.
+	(elf_cris_size_dynamic_sections): Use elf htab shortcuts to dynamic
+	sections.
+	(elf_cris_discard_excess_program_dynamics): Likewise.
+	* elf32-frv.c (struct frvfdpic_elf_link_hash_table): Delete sgot,
+	sgotrel, splt and spltrel.
+	(frvfdpic_got_section, frvfdpic_gotrel_section,
+	frvfdpic_plt_section, frvfdpic_pltrel_section): Define using elf
+	shortcut sections.
+	(_frv_create_got_section): Likewise.
+	* elf32-hppa.c (struct elf32_hppa_link_hash_table): Delete sgot,
+	srelgot, splt and srelplt.
+	(hppa_build_one_stub): Use elf htab shortcuts to dynamic sections.
+	(elf32_hppa_create_dynamic_sections): Likewise.
+	(elf32_hppa_check_relocs): Likewise.
+	(allocate_plt_static): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(elf32_hppa_size_dynamic_sections): Likewise.
+	(elf32_hppa_relocate_section): Likewise.
+	(elf32_hppa_finish_dynamic_symbol): Likewise.
+	(elf32_hppa_finish_dynamic_sections): Likewise.
+	* elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
+	* elf32-lm32.c (struct elf_lm32_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	(lm32fdpic_got_section, lm32fdpic_gotrel_section): Define using elf
+	shortcut sections.
+	(create_got_section): Delete.  Use _bfd_elf_create_got_section instead.
+	(lm32_elf_relocate_section): Use elf htab shortcuts to dyn sections.
+	(lm32_elf_check_relocs): Likewise.
+	(lm32_elf_finish_dynamic_sections): Likewise.
+	(lm32_elf_finish_dynamic_symbol): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(lm32_elf_size_dynamic_sections): Likewise.
+	(lm32_elf_create_dynamic_sections): Likewise.
+	* elf32-m32c.c (m32c_elf_relocate_section): Likewise.
+	(m32c_elf_check_relocs): Likewise.
+	(m32c_elf_finish_dynamic_sections): Likewise.
+	(m32c_elf_always_size_sections): Likewise.
+	* elf32-m32r.c (struct elf_m32r_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	(create_got_section): Delete.  Use _bfd_elf_create_got_section instead.
+	(m32r_elf_create_dynamic_sections): Use elf htab shortcuts to dynamic
+	sections.
+	(allocate_dynrelocs): Likewise.
+	(m32r_elf_size_dynamic_sections): Likewise.
+	(m32r_elf_relocate_section): Likewise.
+	(m32r_elf_finish_dynamic_symbol): Likewise.
+	(m32r_elf_finish_dynamic_sections): Likewise.
+	(m32r_elf_check_relocs): Likewise.
+	* elf32-m68k.c (elf_m68k_partition_multi_got): Likewise.
+	(elf_m68k_check_relocs): Likewise.
+	(elf_m68k_adjust_dynamic_symbol): Likewise.
+	(elf_m68k_size_dynamic_sections): Likewise.
+	(elf_m68k_relocate_section): Likewise.
+	(elf_m68k_finish_dynamic_symbol): Likewise.
+	(elf_m68k_finish_dynamic_sections): Likewise.
+	* elf32-metag.c (struct elf_metag_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	(elf_metag_relocate_section): Use elf htab shortcuts to dynamic
+	sections.
+	(elf_metag_create_dynamic_sections): Likewise.  Allocate got header
+	here in .got.
+	(elf_metag_check_relocs): Use elf htab shortcuts to dynamic sections.
+	(allocate_dynrelocs): Likewise.
+	(elf_metag_size_dynamic_sections): Likewise.
+	(elf_metag_finish_dynamic_symbol): Likewise.
+	(elf_metag_finish_dynamic_sections): Likewise.
+	(elf_metag_size_stubs): Likewise.
+	(elf_backend_got_header_size): Don't define.
+	(elf_backend_want_got_plt): Define.
+	* elf32-microblaze.c (struct elf32_mb_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelpl.
+	(microblaze_elf_relocate_section): Use elf htab shortcuts to dynamic
+	sections.
+	(create_got_section): Delete.  Use _bfd_elf_create_got_section instead.
+	(microblaze_elf_check_relocs): Use elf htab shortcuts to dyn sections.
+	(microblaze_elf_create_dynamic_sections): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(microblaze_elf_size_dynamic_sections): Likewise.
+	(microblaze_elf_finish_dynamic_symbol): Likewise.
+	(microblaze_elf_finish_dynamic_sections): Likewise.
+	* elf32-nds32.c (nds32_elf_link_hash_table_create): Don't NULL
+	already zero fields.
+	(create_got_section): Delete.  Use _bfd_elf_create_got_section instead.
+	(nds32_elf_create_dynamic_sections): Use elf htab shortcuts to dynamic
+	sections.
+	(allocate_dynrelocs): Likewise.
+	(nds32_elf_size_dynamic_sections): Likewise.
+	(nds32_elf_relocate_section): Likewise.
+	(nds32_elf_finish_dynamic_symbol): Likewise.
+	(nds32_elf_finish_dynamic_sections): Likewise.
+	(nds32_elf_check_relocs): Likewise.
+	(calculate_plt_memory_address): Likewise.
+	(calculate_got_memory_address): Likewise.
+	* elf32-nds32.h (struct elf_nds32_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	* elf32-or1k.c (struct elf_or1k_link_hash_table): Likewise.
+	(or1k_elf_relocate_section): Use elf htab shortcuts to dyn sections.
+	(create_got_section): Delete.  Use _bfd_elf_create_got_section instead.
+	(or1k_elf_check_relocs): Use elf htab shortcuts to dynamic sections.
+	(or1k_elf_finish_dynamic_sections): Likewise.
+	(or1k_elf_finish_dynamic_symbol): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(or1k_elf_size_dynamic_sections): Likewise.
+	(or1k_elf_create_dynamic_sections): Likewise.
+	* elf32-ppc.c (struct ppc_elf_link_hash_table): Delete got, relgot,
+	plt, relplt, iplt, reliplt and sgotplt.
+	(ppc_elf_create_got): Use elf htab shortcuts to dynamic sections.
+	(ppc_elf_create_glink): Likewise.
+	(ppc_elf_create_dynamic_sections): Likewise.
+	(ppc_elf_check_relocs): Likewise.
+	(ppc_elf_select_plt_layout): Likewise.
+	(ppc_elf_tls_setup): Likewise.
+	(allocate_got): Likewise.
+	(allocate_dynrelocs): Likewise.
+	(ppc_elf_size_dynamic_sections): Likewise.
+	(ppc_elf_relax_section): Likewise.
+	(ppc_elf_relocate_section): Likewise.
+	(ppc_elf_finish_dynamic_symbol): Likewise.
+	(ppc_elf_reloc_type_class): Likewise.
+	(ppc_elf_finish_dynamic_sections): Likewise.
+	* elf32-rl78.c (rl78_elf_relocate_section): Likewise.
+	(rl78_elf_check_relocs): Likewise.
+	(rl78_elf_finish_dynamic_sections): Likewise.
+	(rl78_elf_always_size_sections): Likewise.
+	* elf32-s390.c 	(create_got_section): Delete.
+	(elf_s390_create_dynamic_sections): Use _bfd_elf_create_got_section.
+	(elf_s390_check_relocs): Likewise.
+	* elf32-score.c (score_elf_create_got_section): Set elf shortcuts.
+	(s3_bfd_score_elf_finish_dynamic_sections): Use elf shortcuts.
+	* elf32-score7.c (score_elf_create_got_section): As above.
+	(s7_bfd_score_elf_finish_dynamic_sections): As above.
+	* elf32-sh.c (struct elf_sh_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	(create_got_section): Don't set them.
+	(sh_elf_create_dynamic_sections): Use elf htab shortcuts to dynamic
+	sections.
+	(allocate_dynrelocs): Likewise.
+	(sh_elf_size_dynamic_sections): Likewise.
+	(sh_elf_add_rofixup): Likewise.
+	(sh_elf_relocate_section): Likewise.
+	(sh_elf_check_relocs): Likewise.
+	(sh_elf_finish_dynamic_symbol): Likewise.
+	(sh_elf_finish_dynamic_sections): Likewise.
+	* elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise.
+	* elf32-tilepro.c (tilepro_elf_create_got_section): Likewise.
+	* elf32-vax.c (elf_vax_check_relocs): Likewise.
+	(elf_vax_adjust_dynamic_symbol): Likewise.
+	(elf_vax_always_size_sections): Likewise.
+	(elf_vax_instantiate_got_entries): Likewise.
+	(elf_vax_relocate_section): Likewise.
+	(elf_vax_finish_dynamic_symbol): Likewise.
+	(elf_vax_finish_dynamic_sections): Likewise.
+	* elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise.
+	(xstormy16_elf_always_size_sections): Likewise.
+	(xstormy16_elf_relocate_section): Likewise.
+	(xstormy16_elf_finish_dynamic_sections): Likewise.
+	* elf32-xtensa.c (struct elf_xtensa_link_hash_table): Delete sgot,
+	sgotplt, srelgot, splt and srelplt.
+	(elf_xtensa_create_dynamic_sections): Use elf htab shortcuts to
+	dynamic sections.
+	(elf_xtensa_allocate_dynrelocs): Likewise.
+	(elf_xtensa_allocate_local_got_size): Likewise.
+	(elf_xtensa_size_dynamic_sections): Likewise.
+	(elf_xtensa_relocate_section): Likewise.
+	(elf_xtensa_finish_dynamic_sections): Likewise.
+	(shrink_dynamic_reloc_sections): Likewise.
+	(elf_xtensa_get_plt_section): Likewise.
+	(elf_xtensa_get_gotplt_section): Likewise.
+	(xtensa_callback_required_dependence): Likewise.
+	* elf64-alpha.c (elf64_alpha_create_dynamic_sections): Set elf htab
+	shortcuts to dynamic sections.
+	(elf64_alpha_adjust_dynamic_symbol): Use elf htab shortcuts to
+	dynamic sections.
+	(elf64_alpha_size_plt_section): Likewise.
+	(elf64_alpha_size_rela_got_1): Likewise.
+	(elf64_alpha_size_rela_got_section): Likewise.
+	(elf64_alpha_relocate_section): Likewise.
+	(elf64_alpha_finish_dynamic_symbol): Likewise.
+	(elf64_alpha_finish_dynamic_sections): Likewise.
+	* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
+	* elf64-s390.c (create_got_section): Delete.
+	(elf_s390_create_dynamic_sections): Use _bfd_elf_create_got_section.
+	(elf_s390_check_relocs): Likewise.
+	* elf64-sh64.c (sh_elf64_relocate_section): Use elf htab shortcuts to
+	dynamic sections.
+	(sh_elf64_check_relocs): Likewise.
+	(sh64_elf64_adjust_dynamic_symbol): Likewise.
+	(sh64_elf64_size_dynamic_sections): Likewise.
+	(sh64_elf64_finish_dynamic_symbol): Likewise.
+	(sh64_elf64_finish_dynamic_sections): Likewise.
+	* elflink.c (_bfd_elf_create_got_section): Likewise.
+	* elfnn-aarch64.c (aarch64_elf_create_got_section): Likewise.
+	* elfnn-ia64.c (elfNN_ia64_size_dynamic_sections): Likewise.
+	(elfNN_ia64_finish_dynamic_sections): Likewise.
+	* elfnn-riscv.c (riscv_elf_create_got_section): Likewise.
+	* elfxx-mips.c (struct mips_elf_link_hash_table): Delete srellt,
+	sgotplt, splt and sgot.
+	(mips_elf_initialize_tls_slots): Use elf htab shortcuts to dynamic
+	sections.
+	(mips_elf_gotplt_index): Likewise.
+	(mips_elf_primary_global_got_index): Likewise.
+	(mips_elf_global_got_index): Likewise.
+	(mips_elf_got_offset_from_index): Likewise.
+	(mips_elf_create_local_got_entry): Likewise.
+	(mips_elf_create_got_section): Likewise.
+	(mips_elf_calculate_relocation): Likewise.
+	(_bfd_mips_elf_create_dynamic_sections): Likewise.
+	(_bfd_mips_elf_adjust_dynamic_symbol): Likewise.
+	(mips_elf_lay_out_got): Likewise.
+	(mips_elf_set_plt_sym_value): Likewise.
+	(_bfd_mips_elf_size_dynamic_sections): Likewise.
+	(_bfd_mips_elf_finish_dynamic_symbol): Likewise.
+	(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
+	(mips_finish_exec_plt): Likewise.
+	(mips_vxworks_finish_exec_plt): Likewise.
+	(mips_vxworks_finish_shared_plt): Likewise.
+	(_bfd_mips_elf_finish_dynamic_sections): Likewise.
+	* elfxx-sparc.c (sparc_finish_dyn): Likewise.
+	* elfxx-tilegx.c (tilegx_elf_create_got_section): Likewise.
+
+2016-11-23  Alan Modra  <amodra@gmail.com>
+
+	* po/BLD-POTFILES.in: Regenerate.
+	* po/SRC-POTFILES.in: Regenerate.
+
+2016-11-22  Ambrogino Modigliani  <ambrogino.modigliani@gmail.com>
+
+        * warning.m4: Fix spelling in comments.
+        * configure.ac: Fix spelling in comments.
+        * configure: Regenerate.
+
+2016-11-22  Alan Modra  <amodra@gmail.com>
+
+	PR 20744
+	* elf32-ppc.h (struct ppc_elf_params): Add vle_reloc_fixup field.
+	* elf32-ppc.c: Include opcode/ppc.h.
+	(ppc_elf_howto_raw): Correct dst_mask for R_PPC_VLE_LO16A,
+	R_PPC_VLE_LO16D, R_PPC_VLE_HI16A, R_PPC_VLE_HI16D, R_PPC_VLE_HA16A,
+	R_PPC_VLE_HA16D, R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_LO16D,
+	R_PPC_VLE_SDAREL_HI16A, R_PPC_VLE_SDAREL_HI16D,
+	R_PPC_VLE_SDAREL_HA16A, and R_PPC_VLE_SDAREL_HA16D relocs.
+	(ppc_elf_link_hash_table_create): Update default_params init.
+	(ppc_elf_vle_split16): Correct shift and mask.  Add params.
+	Report or fix insn/reloc mismatches.
+	(ppc_elf_relocate_section): Pass input_section, offset and fixup
+	to ppc_elf_vle_split16.
+
+2016-11-22  Alan Modra  <amodra@gmail.com>
+
+	* elf32-ppc.c (ppc64_elf_relocate_section): Calculate d_offset for
+	input_bfd.  Replace occurrences of output_bfd as bfd_get_32 and
+	bfd_put_32 param with input_bfd.
+	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.  Also
+	ppc_elf_vle_split16 param.
+	(ppc_elf_vle_split16): Rename output_bfd param to input_bfd.
+
+2016-11-21  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* dwarf2.c (build_line_info_table): Rename `index' local
+	variable to `line_index'.
+	(build_lookup_funcinfo_table): Rename `index' local variable to
+	`func_index'.
+
 2016-11-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Do not
diff --git a/bfd/configure b/bfd/configure
index 68db12f..ab239fe 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -12291,7 +12291,7 @@ fi
 rm -f conftest*
 
 
-# Verify CC_FOR_BUILD to be compatible with waring flags
+# Verify CC_FOR_BUILD to be compatible with warning flags
 
 # Add -Wshadow if the compiler is a sufficiently recent version of GCC.
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -15805,7 +15805,7 @@ fi
 
 
 
-# Determine the host dependant file_ptr a.k.a. off_t type.  In order
+# Determine the host dependent file_ptr a.k.a. off_t type.  In order
 # prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and
 # fseeko, long.  This assumes that sizeof off_t is .ge. sizeof long.
 # Hopefully a reasonable assumption since fseeko et.al. should be
diff --git a/bfd/configure.ac b/bfd/configure.ac
index 6f11d29..3254dae 100644
--- a/bfd/configure.ac
+++ b/bfd/configure.ac
@@ -1156,7 +1156,7 @@ fi
 AC_SUBST(supports_plugins)
 AC_SUBST(lt_cv_dlopen_libs)
 
-# Determine the host dependant file_ptr a.k.a. off_t type.  In order
+# Determine the host dependent file_ptr a.k.a. off_t type.  In order
 # prefer: off64_t - if ftello64 and fseeko64, off_t - if ftello and
 # fseeko, long.  This assumes that sizeof off_t is .ge. sizeof long.
 # Hopefully a reasonable assumption since fseeko et.al. should be
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index 287ba0f..e2c8dee 100644
--- a/bfd/dwarf2.c
+++ b/bfd/dwarf2.c
@@ -1611,7 +1611,7 @@ build_line_info_table (struct line_info_table *  table,
   struct line_info** line_info_lookup;
   struct line_info*  each_line;
   unsigned int       num_lines;
-  unsigned int       index;
+  unsigned int       line_index;
 
   if (seq->line_info_lookup != NULL)
     return TRUE;
@@ -1634,11 +1634,11 @@ build_line_info_table (struct line_info_table *  table,
     return FALSE;
 
   /* Create the line information lookup table.  */
-  index = num_lines;
+  line_index = num_lines;
   for (each_line = seq->last_line; each_line; each_line = each_line->prev_line)
-    line_info_lookup[--index] = each_line;
+    line_info_lookup[--line_index] = each_line;
 
-  BFD_ASSERT (index == 0);
+  BFD_ASSERT (line_index == 0);
 
   seq->num_lines = num_lines;
   seq->line_info_lookup = line_info_lookup;
@@ -2259,7 +2259,7 @@ build_lookup_funcinfo_table (struct comp_unit * unit)
   unsigned int number_of_functions = unit->number_of_functions;
   struct funcinfo *each;
   struct lookup_funcinfo *entry;
-  size_t index;
+  size_t func_index;
   struct arange *range;
   bfd_vma low_addr, high_addr;
 
@@ -2273,10 +2273,10 @@ build_lookup_funcinfo_table (struct comp_unit * unit)
     return FALSE;
 
   /* Populate the function info lookup table.  */


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-20 20:58 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-20 20:58 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  8419da695fd36101a0249a81b79f748f8612d8b4 (commit)
       via  cad7746743b48272cffd380be00ab77e918bb31e (commit)
       via  75c3663de0588c105ea5ae23de0bf0f016c2d1b6 (commit)
       via  b827d12822178fe558fc78252d5e5ab015dcb287 (commit)
      from  c67ca28e3fc01491846ad1e27ff20c8f807b6c27 (commit)

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

- Log -----------------------------------------------------------------
commit 8419da695fd36101a0249a81b79f748f8612d8b4
Merge: c67ca28 cad7746
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:46:26 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit cad7746743b48272cffd380be00ab77e918bb31e
Merge: 6f3facd 75c3663
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:46:26 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 75c3663de0588c105ea5ae23de0bf0f016c2d1b6
Merge: 11b76f0 b827d12
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:46:25 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit b827d12822178fe558fc78252d5e5ab015dcb287
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:46:18 2016 +0100

    .

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

Summary of changes:
 gdb/testsuite/gdb.dwarf2/dw2-error.exp |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

First 500 lines of diff:
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-error.exp b/gdb/testsuite/gdb.dwarf2/dw2-error.exp
index fafe1ed..2d5b206 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-error.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-error.exp
@@ -41,7 +41,7 @@ gdb_test_no_output "set breakpoint pending off"
 
 # First test that reading symbols fails.
 gdb_test "file $binfile" \
-    "Reading symbols.*Dwarf Error: wrong version in compilation unit header .is 153, should be 2, 3, or 4.*" \
+    {Reading symbols.*Dwarf Error: wrong unit_type in compilation unit header \(is 0, should be 1 or 2\).*} \
     "file $testfile"
 
 # Now check that we can still break given the minimal symbol.


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-20 20:10 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-20 20:10 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  c67ca28e3fc01491846ad1e27ff20c8f807b6c27 (commit)
       via  6f3facd36a83edfa624d7d5d51c6018dc78968a4 (commit)
       via  11b76f044a9b0cde1687b1621d3c990f9986b307 (commit)
       via  3f99f9ecbd18de2ec31fe815780241d08a8aa035 (commit)
       via  76a29a45db928e68e1faf83d9c7008cc29543e65 (commit)
       via  b96beb3fc533ffeb0aadaee6d8445938287305af (commit)
       via  b5fbed8982b47d1ea5a0435c156e488e24e9d67c (commit)
       via  cc188e5fd6d4f8d3061ed6c58c432a150f7966e9 (commit)
       via  0fc9967d0b28a1e037233d49cec479d3ab1e9e59 (commit)
      from  4de1309af9f379170f616819c68e1fcb8cab8f06 (commit)

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

- Log -----------------------------------------------------------------
commit c67ca28e3fc01491846ad1e27ff20c8f807b6c27
Merge: 4de1309 6f3facd
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:10:21 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 6f3facd36a83edfa624d7d5d51c6018dc78968a4
Merge: 5f57cb5 11b76f0
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:10:21 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 11b76f044a9b0cde1687b1621d3c990f9986b307
Merge: 7be994b 3f99f9e
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:10:20 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit 3f99f9ecbd18de2ec31fe815780241d08a8aa035
Merge: b96beb3 76a29a4
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:10:20 2016 +0100

    Merge branch 'dwarf5gcc' into dwarf5gcc-gdb

commit b96beb3fc533ffeb0aadaee6d8445938287305af
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun Nov 20 21:10:03 2016 +0100

    .

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

Summary of changes:
 bfd/ChangeLog              |    5 ++++
 bfd/elfxx-sparc.c          |   16 +++++++-------
 bfd/version.h              |    2 +-
 gdb/ChangeLog              |    5 ++++
 gdb/contrib/ari/gdb_ari.sh |   16 ++++++++++++++
 gdb/dwarf2read.c           |   50 +++++++++++++++++++++++++++++---------------
 6 files changed, 68 insertions(+), 26 deletions(-)

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 8a18a6d..f28351d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2016-11-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Do not
+	apply the negative GOT offset optimization in 64-bit code.
+
 2016-11-18  James Clarke  <jrtc27@jrtc27.com>
 
 	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Don't convert
diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c
index e1c7b22..cf30012 100644
--- a/bfd/elfxx-sparc.c
+++ b/bfd/elfxx-sparc.c
@@ -2661,19 +2661,19 @@ _bfd_sparc_elf_size_dynamic_sections (bfd *output_bfd,
   /* Allocate .plt and .got entries, and space for local symbols.  */
   htab_traverse (htab->loc_hash_table, allocate_local_dynrelocs, info);
 
-  if (!htab->is_vxworks
+  if (! ABI_64_P (output_bfd)
+      && !htab->is_vxworks
       && elf_hash_table (info)->dynamic_sections_created)
     {
-      if (! ABI_64_P (output_bfd))
-        {
-          /* Make space for the trailing nop in .plt.  */
-          if (htab->elf.splt->size > 0)
-            htab->elf.splt->size += 1 * SPARC_INSN_BYTES;
-        }
+      /* Make space for the trailing nop in .plt.  */
+      if (htab->elf.splt->size > 0)
+	htab->elf.splt->size += 1 * SPARC_INSN_BYTES;
 
       /* If the .got section is more than 0x1000 bytes, we add
 	 0x1000 to the value of _GLOBAL_OFFSET_TABLE_, so that 13
-	 bit relocations have a greater chance of working.  */
+	 bit relocations have a greater chance of working.
+
+	 FIXME: Make this optimization work for 64-bit too.  */
       if (htab->elf.sgot->size >= 0x1000
 	  && elf_hash_table (info)->hgot->root.u.def.value == 0)
 	elf_hash_table (info)->hgot->root.u.def.value = 0x1000;
diff --git a/bfd/version.h b/bfd/version.h
index 071f655..a8f63a5 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20161119
+#define BFD_VERSION_DATE 20161120
 #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 07d21a6..3797e8b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2016-11-19  Joel Brobecker  <brobecker@adacore.com>
+
+	* contrib/ari/gdb_ari.sh: Add detection of printf_vma and
+	sprintf_vma.
+
 2016-11-18  Simon Marchi  <simon.marchi@polymtl.ca>
 
 	* Makefile.in (%.o: $(srcdir)/gdbtk/generic/%.c): Fix typo.
diff --git a/gdb/contrib/ari/gdb_ari.sh b/gdb/contrib/ari/gdb_ari.sh
index 7e639e3..2ecc0d6 100755
--- a/gdb/contrib/ari/gdb_ari.sh
+++ b/gdb/contrib/ari/gdb_ari.sh
@@ -1097,6 +1097,22 @@ Do not use vasprintf(), instead use xstrvprintf"
     fail("vasprintf")
 }
 
+BEGIN { doc["printf_vma"] = "\
+Do not use printf_vma, instead use paddress or phex_nz"
+    category["printf_vma"] = ari_code
+}
+/(^|[^_[:alnum:]])printf_vma[[:space:]]*\(/ {
+    fail("printf_vma")
+}
+
+BEGIN { doc["sprintf_vma"] = "\
+Do not use sprintf_vma, instead use paddress or phex_nz"
+    category["sprintf_vma"] = ari_code
+}
+/(^|[^_[:alnum:]])sprintf_vma[[:space:]]*\(/ {
+    fail("sprintf_vma")
+}
+
 # More generic memory operations
 
 BEGIN { doc["bzero"] = "\
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 7008f2c..7978289 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -1883,11 +1883,12 @@ static void find_file_and_directory (struct die_info *die,
 static char *file_full_name (int file, struct line_header *lh,
 			     const char *comp_dir);
 
+enum class RCUH_Kind { COMPILE, TYPE };
 static const gdb_byte *read_and_check_comp_unit_head
   (struct comp_unit_head *header,
    struct dwarf2_section_info *section,
    struct dwarf2_section_info *abbrev_section, const gdb_byte *info_ptr,
-   int is_debug_types_section);
+   RCUH_Kind section_kind);
 
 static void init_cutu_and_read_dies
   (struct dwarf2_per_cu_data *this_cu, struct abbrev_table *abbrev_table,
@@ -4384,8 +4385,6 @@ dwarf2_find_base_address (struct die_info *die, struct dwarf2_cu *cu)
    NOTE: This leaves members offset, first_die_offset to be filled in
    by the caller.  */
 
-enum class RCUH_Kind { COMPILE, TYPE };
-
 static const gdb_byte *
 read_comp_unit_head (struct comp_unit_head *cu_header,
 		     const gdb_byte *info_ptr,
@@ -4403,7 +4402,20 @@ read_comp_unit_head (struct comp_unit_head *cu_header,
   info_ptr += bytes_read;
   cu_header->version = read_2_bytes (abfd, info_ptr);
   info_ptr += 2;
-  if (cu_header->version >= 5)
+  if (cu_header->version < 5)
+    switch (section_kind)
+      {
+      case RCUH_Kind::COMPILE:
+	cu_header->unit_type = DW_UT_compile;
+	break;
+      case RCUH_Kind::TYPE:
+	cu_header->unit_type = DW_UT_type;
+	break;
+      default:
+	internal_error (__FILE__, __LINE__,
+			_("read_comp_unit_head: invalid section_kind"));
+      }
+  else
     {
       cu_header->unit_type = static_cast<enum dwarf_unit_type>
 						 (read_1_byte (abfd, info_ptr));
@@ -4530,16 +4542,14 @@ read_and_check_comp_unit_head (struct comp_unit_head *header,
 			       struct dwarf2_section_info *section,
 			       struct dwarf2_section_info *abbrev_section,
 			       const gdb_byte *info_ptr,
-			       int is_debug_types_section)
+			       RCUH_Kind section_kind)
 {
   const gdb_byte *beg_of_comp_unit = info_ptr;
   bfd *abfd = get_section_bfd_owner (section);
 
   header->offset.sect_off = beg_of_comp_unit - section->buffer;
 
-  info_ptr = read_comp_unit_head (header, info_ptr, section,
-				  is_debug_types_section ? RCUH_Kind::TYPE
-							 : RCUH_Kind::COMPILE);
+  info_ptr = read_comp_unit_head (header, info_ptr, section, section_kind);
 
   header->first_die_offset.cu_off = info_ptr - beg_of_comp_unit;
 
@@ -4688,7 +4698,8 @@ add_signatured_type_cu_to_table (void **slot, void *datum)
 
 static void
 create_debug_type_hash_table (struct dwo_file *dwo_file,
-			      dwarf2_section_info *section, htab_t &types_htab)
+			      dwarf2_section_info *section, htab_t &types_htab,
+			      RCUH_Kind section_kind)
 {
   struct objfile *objfile = dwarf2_per_objfile->objfile;
   struct dwarf2_section_info *abbrev_section;
@@ -4735,7 +4746,7 @@ create_debug_type_hash_table (struct dwo_file *dwo_file,
 	 table, but we don't need anything else just yet.  */
 
       ptr = read_and_check_comp_unit_head (&header, section,
-					   abbrev_section, ptr, 0);
+					   abbrev_section, ptr, section_kind);
 
       length = get_cu_length (&header);
 
@@ -4847,7 +4858,8 @@ create_debug_types_hash_table (struct dwo_file *dwo_file,
   for (ix = 0;
        VEC_iterate (dwarf2_section_info_def, types, ix, section);
        ++ix)
-    create_debug_type_hash_table (dwo_file, section, types_htab);
+    create_debug_type_hash_table (dwo_file, section, types_htab,
+				  RCUH_Kind::TYPE);
 }
 
 /* Create the hash table of all entries in the .debug_types section,
@@ -4861,7 +4873,8 @@ create_all_type_units (struct objfile *objfile)
   htab_t types_htab = NULL;
   struct signatured_type **iter;
 
-  create_debug_type_hash_table (NULL, &dwarf2_per_objfile->info, types_htab);
+  create_debug_type_hash_table (NULL, &dwarf2_per_objfile->info, types_htab,
+				RCUH_Kind::COMPILE);
   create_debug_types_hash_table (NULL, dwarf2_per_objfile->types, types_htab);
   if (types_htab == NULL)
     {
@@ -5246,7 +5259,7 @@ read_cutu_die_from_dwo (struct dwarf2_per_cu_data *this_cu,
 
       info_ptr = read_and_check_comp_unit_head (&cu->header, section,
 						dwo_abbrev_section,
-						info_ptr, 1);
+						info_ptr, RCUH_Kind::TYPE);
       /* This is not an assert because it can be caused by bad debug info.  */
       if (sig_type->signature != cu->header.signature)
 	{
@@ -5272,7 +5285,7 @@ read_cutu_die_from_dwo (struct dwarf2_per_cu_data *this_cu,
     {
       info_ptr = read_and_check_comp_unit_head (&cu->header, section,
 						dwo_abbrev_section,
-						info_ptr, 0);
+						info_ptr, RCUH_Kind::COMPILE);
       gdb_assert (dwo_unit->offset.sect_off == cu->header.offset.sect_off);
       /* For DWOs coming from DWP files, we don't know the CU length
 	 until now.  */
@@ -5593,7 +5606,7 @@ init_cutu_and_read_dies (struct dwarf2_per_cu_data *this_cu,
 	{
 	  info_ptr = read_and_check_comp_unit_head (&cu->header, section,
 						    abbrev_section, info_ptr,
-						    1);
+						    RCUH_Kind::TYPE);
 
 	  /* Since per_cu is the first member of struct signatured_type,
 	     we can go from a pointer to one to a pointer to the other.  */
@@ -5617,7 +5630,8 @@ init_cutu_and_read_dies (struct dwarf2_per_cu_data *this_cu,
 	{
 	  info_ptr = read_and_check_comp_unit_head (&cu->header, section,
 						    abbrev_section,
-						    info_ptr, 0);
+						    info_ptr,
+						    RCUH_Kind::COMPILE);
 
 	  gdb_assert (this_cu->offset.sect_off == cu->header.offset.sect_off);
 	  gdb_assert (this_cu->length == get_cu_length (&cu->header));
@@ -5783,7 +5797,9 @@ init_cutu_and_read_dies_no_follow (struct dwarf2_per_cu_data *this_cu,
   begin_info_ptr = info_ptr = section->buffer + this_cu->offset.sect_off;
   info_ptr = read_and_check_comp_unit_head (&cu.header, section,
 					    abbrev_section, info_ptr,
-					    this_cu->is_debug_types);
+					    (this_cu->is_debug_types
+					     ? RCUH_Kind::TYPE
+					     : RCUH_Kind::COMPILE));
 
   this_cu->length = get_cu_length (&cu.header);
 


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-19  8:49 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-19  8:49 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  4de1309af9f379170f616819c68e1fcb8cab8f06 (commit)
       via  5f57cb53ae3ef86619c5d165b9c1ccde03979ed0 (commit)
       via  7be994b2e78c88cea204acc9140328333f08293a (commit)
       via  601b4c3a97111c08f7a38b486f30ba31267dfa41 (commit)
       via  18eae4f63e837e10a34db31d8bacfce42764fd02 (commit)
       via  b9e5565b1ff1d72e23a268560ec049bb5f30ea7b (commit)
       via  be0a30a96c8eb1d50e6bc3b799bebb6c084a61f7 (commit)
       via  502c7e5cb9801f18852553b14959364166f24602 (commit)
       via  ef787763b9495913d5be90bcdedcecb553cbf308 (commit)
       via  3d6d882e29fb2b8f2451405c37fd6fd9b92fcdaa (commit)
      from  79585a8eacfaa69b8e381d2dde48c310e97d8133 (commit)

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

- Log -----------------------------------------------------------------
commit 4de1309af9f379170f616819c68e1fcb8cab8f06
Merge: 601b4c3 5f57cb5
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:49:20 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 5f57cb53ae3ef86619c5d165b9c1ccde03979ed0
Merge: 18eae4f 7be994b
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:49:20 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 7be994b2e78c88cea204acc9140328333f08293a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:49:00 2016 +0100

    .

commit 601b4c3a97111c08f7a38b486f30ba31267dfa41
Merge: 79585a8 18eae4f
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:37:49 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 18eae4f63e837e10a34db31d8bacfce42764fd02
Merge: 7b0b1c4 b9e5565
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:37:48 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit b9e5565b1ff1d72e23a268560ec049bb5f30ea7b
Merge: 6e42770 be0a30a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:37:47 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit be0a30a96c8eb1d50e6bc3b799bebb6c084a61f7
Merge: a933e66 502c7e5
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat Nov 19 09:37:47 2016 +0100

    Merge branch 'dwarf5gcc' into dwarf5gcc-gdb

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

Summary of changes:
 bfd/version.h                                |    2 +-
 gdb/ChangeLog                                |    4 ++++
 gdb/Makefile.in                              |    2 +-
 gdb/testsuite/gdb.arch/amd64-entry-value.exp |    6 +++---
 4 files changed, 9 insertions(+), 5 deletions(-)

First 500 lines of diff:
diff --git a/bfd/version.h b/bfd/version.h
index c74b66c..071f655 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20161118
+#define BFD_VERSION_DATE 20161119
 #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 07b564b..07d21a6 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2016-11-18  Simon Marchi  <simon.marchi@polymtl.ca>
+
+	* Makefile.in (%.o: $(srcdir)/gdbtk/generic/%.c): Fix typo.
+
 2016-11-17  Simon Marchi  <simon.marchi@polymtl.ca>
 
 	(PYTHON_CFLAGS): Move up.
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index 1d6da4b..b68cf58 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -1151,7 +1151,7 @@ all: gdb$(EXEEXT) $(CONFIG_ALL)
 	$(POSTCOMPILE)
 
 %.o: $(srcdir)/gdbtk/generic/%.c
-	$(COMPILE) $(all_gdbtk_cflags) %<
+	$(COMPILE) $(all_gdbtk_cflags) $<
 	$(POSTCOMPILE)
 
 %.o: $(srcdir)/guile/%.c
diff --git a/gdb/testsuite/gdb.arch/amd64-entry-value.exp b/gdb/testsuite/gdb.arch/amd64-entry-value.exp
index 6dadb53..7ed2b3f 100644
--- a/gdb/testsuite/gdb.arch/amd64-entry-value.exp
+++ b/gdb/testsuite/gdb.arch/amd64-entry-value.exp
@@ -159,7 +159,7 @@ gdb_test_no_output "set print entry-values default" "entry_invalid: set print en
 gdb_test "frame" {\(inv=<optimized out>\).*} "entry_invalid: frame: default"
 
 
-# Test @entry values for DW_AT_GNU_call_site_data_value parameters.
+# Test @entry values for DW_AT_call_data_value parameters.
 
 gdb_continue_to_breakpoint "entry_reference: reference"
 
@@ -188,7 +188,7 @@ gdb_test "p regparam@entry" " = \\(int &\\) @$addr: 1" "entry_reference: p regpa
 gdb_test "p &regparam@entry" " = \\(int \\*\\) $addr" "entry_reference: p &regparam@entry"
 gdb_test "p regcopy" " = 1" "entry_reference: p regcopy"
 gdb_test "p nodataparam" " = \\(int &\\) @0x\[0-9a-f\]+: 22" "entry_reference: p nodataparam"
-gdb_test "p nodataparam@entry" "Cannot resolve DW_AT_GNU_call_site_data_value" "entry_reference: p nodataparam@entry"
+gdb_test "p nodataparam@entry" "Cannot resolve DW_AT_call_data_value" "entry_reference: p nodataparam@entry"
 
 
 # Test virtual tail call frames.
@@ -249,5 +249,5 @@ gdb_test "bt" "^bt\r\n#0 +d \\(i=<optimized out>, j=<optimized out>\\)\[^\r\n\]*
 	 "self: bt"
 
 gdb_test_no_output "set debug entry-values 1"
-gdb_test "bt" "DW_OP_GNU_entry_value resolving has found function \"self\\(int\\)\" at 0x\[0-9a-f\]+ can call itself via tail calls\r\n.*" \
+gdb_test "bt" "DW_OP_entry_value resolving has found function \"self\\(int\\)\" at 0x\[0-9a-f\]+ can call itself via tail calls\r\n.*" \
 	 "self: bt debug entry-values"


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-18 19:20 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-18 19:20 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  94fcf1fe5ccdc29f54984f37f2d0fbcd95d6c867 (commit)
       via  24ea3d670bb16abc461f3006440b3a411235111b (commit)
       via  1ea8cf87a0e31d1e4ebb3832ddc1bf29067e7b81 (commit)
       via  a933e669c498ec393bb5a98921e918934280b131 (commit)
       via  940be4a3470ffdd54cc46e06ca09a07310083f6e (commit)
       via  cedc43950776d9683cb8c88563b6ba0981bedc9e (commit)
       via  8504e0974cf4b67680a11208b16caa2d3c77b838 (commit)
       via  bb050a6932c4b0ea86202fe62bed2d94999f77ad (commit)
       via  cc133f9f118ef4afd93da0ecba48151488c41c74 (commit)
       via  a85db0a6188b89ef49a1bd0f0ed435adc133b3ae (commit)
       via  535aade664ac4170fe82e52c9addd686156220a1 (commit)
       via  ddc5804ebd4b2be29ad4e3e259f5c6e907f34f26 (commit)
       via  1706852c3c6c1d39f949c933d37647d02509b9cb (commit)
       via  59d2699cfd30f9defc454be17415c0a518ece32b (commit)
       via  a4ddf8dc72f0ac10c3459a91949eb1bdb07ed10d (commit)
       via  4d17eaece8b31e642acaf4d77fe961ad8e3aaf50 (commit)
       via  ef0f5d7cc3b2082c94beffa7c9c1a8acd8eaa427 (commit)
       via  aba19b625f34fb3d61263fe8044cf0c6d8804570 (commit)
       via  9d2cdc86574bda0f1013be8cdc166d86b6d032bc (commit)
       via  c2c4ff8d52a2cd3263a547b0384692498714aa1b (commit)
       via  28617675c264213180a599bb4327bf162029636a (commit)
       via  ccfc90a39b78b7bc4173cd9ead49d2aa59695378 (commit)
       via  3f06e55061d0d8f72dfd11f6c432c23f45d9b597 (commit)
       via  6ec49e7c0aeb6d98e379319b565aee2c89388615 (commit)
       via  cd42d70b4d7e92dcc6c533e012ab8af122de7b9e (commit)
       via  23beba32dc3031279641e032855bc1fd41768851 (commit)
       via  470dd0a647c95a2e88c5b0f8df538826b08959a8 (commit)
       via  5443506ee45cb94769db7e76dd2021a96f2f0680 (commit)
       via  3b165252e882c05c8217f888194877224295592d (commit)
       via  f2ff9acd32b4667ee16a03ca8d10fd8b99e22f46 (commit)
       via  66be918f5f9f78d74c70aa332756286ff9d0ccf2 (commit)
       via  7c2683c40f745397e80b6df4edf8265ecb6fd194 (commit)
       via  2f45d5e77c1e23f582b2cb41c1bc62cef0d8d6a2 (commit)
       via  200069c74f42ffcc726b9995a46971a86286a256 (commit)
       via  19f1935d91bfabbe4176ffdaca95bc789b593153 (commit)
       via  fa98319231a95aca0313878443143d3f92aca5e1 (commit)
       via  256ae5dbc73d1348850f86ee77a0dc3b04bc7cc0 (commit)
       via  33cc7d368f420326606695daafd6292e2779c6af (commit)
       via  41b56feb5063aee4fefb4a991eb796d1e8a7475e (commit)
       via  df433d316277ff5293832d3cd6cbc30b5c38dec0 (commit)
       via  1a2f3d7ff1d79b1290704e48c71e905b987393a6 (commit)
      from  6f67c9b86a08bd21368962450dac9aa3cc7cea77 (commit)

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

- Log -----------------------------------------------------------------
commit 94fcf1fe5ccdc29f54984f37f2d0fbcd95d6c867
Merge: 2f45d5e 24ea3d6
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:20:32 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 24ea3d670bb16abc461f3006440b3a411235111b
Merge: 84fd5bc 1ea8cf8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:20:31 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 1ea8cf87a0e31d1e4ebb3832ddc1bf29067e7b81
Merge: 12df202 a933e66
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:20:30 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit a933e669c498ec393bb5a98921e918934280b131
Merge: cedc439 940be4a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:20:28 2016 +0100

    Merge branch 'dwarf5gcc' into dwarf5gcc-gdb

commit cedc43950776d9683cb8c88563b6ba0981bedc9e
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Nov 18 20:19:33 2016 +0100

    .

commit 23beba32dc3031279641e032855bc1fd41768851
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Thu Nov 17 20:54:39 2016 +0100

    .

commit 2f45d5e77c1e23f582b2cb41c1bc62cef0d8d6a2
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Thu Nov 17 10:42:14 2016 +0100

    .

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

Summary of changes:
 bfd/ChangeLog                                      |   14 +
 bfd/elf32-metag.c                                  |   11 +-
 bfd/elfxx-sparc.c                                  |   22 +-
 bfd/version.h                                      |    2 +-
 binutils/ChangeLog                                 |    4 +
 binutils/cxxfilt.c                                 |    1 +
 binutils/dwarf.c                                   |   43 +-
 gas/ChangeLog                                      |   56 +
 gas/config/tc-aarch64.c                            |   24 +
 gas/config/tc-arc.c                                |   77 +-
 gas/testsuite/gas/aarch64/advsimd-armv8_3.d        |   33 +
 gas/testsuite/gas/aarch64/advsimd-armv8_3.s        |   36 +
 gas/testsuite/gas/aarch64/fp-armv8_3.d             |   10 +
 gas/testsuite/gas/aarch64/fp-armv8_3.s             |    5 +
 gas/testsuite/gas/aarch64/illegal-fcmla.d          |    2 +
 gas/testsuite/gas/aarch64/illegal-fcmla.l          |   17 +
 gas/testsuite/gas/aarch64/illegal-fcmla.s          |   25 +
 gas/testsuite/gas/aarch64/illegal-fjcvtzs.d        |    2 +
 gas/testsuite/gas/aarch64/illegal-fjcvtzs.l        |    8 +
 gas/testsuite/gas/aarch64/illegal-fjcvtzs.s        |   14 +
 gas/testsuite/gas/aarch64/illegal-ldapr.d          |    2 +
 gas/testsuite/gas/aarch64/illegal-ldapr.l          |   16 +
 gas/testsuite/gas/aarch64/illegal-ldapr.s          |   25 +
 gas/testsuite/gas/aarch64/illegal-ldraa.d          |    2 +
 gas/testsuite/gas/aarch64/illegal-ldraa.l          |   35 +
 gas/testsuite/gas/aarch64/illegal-ldraa.s          |   44 +
 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.d   |    2 +
 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.l   |    3 +
 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.s   |    6 +
 gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.d |   20 +
 gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.s |   22 +
 gas/testsuite/gas/aarch64/pac.d                    |   22 +
 gas/testsuite/gas/aarch64/pac.s                    |   23 +
 gas/testsuite/gas/arc/cl-warn.s                    |    5 +
 gas/testsuite/gas/arc/cpu-pseudop-1.d              |   12 +
 gas/testsuite/gas/arc/cpu-pseudop-1.s              |    6 +
 gas/testsuite/gas/arc/cpu-pseudop-2.d              |   11 +
 gas/testsuite/gas/arc/cpu-pseudop-2.s              |    5 +
 gas/testsuite/gas/arc/cpu-warn2.s                  |    4 +
 gdb/ChangeLog                                      |  290 ++
 gdb/Makefile.in                                    |  835 +----
 gdb/NEWS                                           |    5 +
 gdb/ada-lang.c                                     |   14 +-
 gdb/c-exp.y                                        |   28 +-
 gdb/configure                                      |   97 -
 gdb/configure.ac                                   |   11 -
 gdb/ctf.c                                          |    5 -
 gdb/doc/ChangeLog                                  |    5 +
 gdb/doc/gdb.texinfo                                |    2 +-
 gdb/dwarf2loc.c                                    |   21 +-
 gdb/dwarf2read.c                                   |  415 +-
 gdb/findvar.c                                      |   26 +-
 gdb/frame-unwind.c                                 |    3 +-
 gdb/frame.c                                        |  121 +-
 gdb/frame.h                                        |   16 +-
 gdb/gdbserver/ChangeLog                            |   13 +
 gdb/gdbserver/Makefile.in                          |   36 +-
 gdb/gdbserver/configure                            |   97 -
 gdb/gdbserver/configure.ac                         |   11 -
 gdb/python/py-unwind.c                             |    7 +-
 gdb/sentinel-frame.c                               |    2 +-
 gdb/testsuite/ChangeLog                            |   18 +
 gdb/testsuite/Makefile.in                          |   88 +-
 gdb/testsuite/configure                            |   99 -
 gdb/testsuite/configure.ac                         |   11 -
 gdb/testsuite/gdb.python/py-recurse-unwind.c       |    6 +-
 gdb/testsuite/gdb.python/py-recurse-unwind.exp     |   63 +-
 gdb/testsuite/gdb.python/py-recurse-unwind.py      |   29 +-
 gdb/tracepoint.c                                   |   60 +-
 gdb/tracepoint.h                                   |    3 +-
 gdb/valarith.c                                     |    2 +-
 gdb/valops.c                                       |   13 +-
 gdb/value.c                                        |   47 +-
 gdb/value.h                                        |   16 +-
 include/ChangeLog                                  |   28 +
 include/demangle.h                                 |   33 +-
 include/opcode/aarch64.h                           |    7 +
 libiberty/ChangeLog                                |   66 +
 libiberty/Makefile.in                              |   13 +
 libiberty/configure                                |    3 +-
 libiberty/configure.ac                             |    3 +-
 libiberty/cp-demangle.c                            |  197 +-
 libiberty/cplus-dem.c                              |   69 +-
 libiberty/hashtab.c                                |   20 +-
 libiberty/regex.c                                  |    8 +-
 libiberty/rust-demangle.c                          |  348 ++
 libiberty/testsuite/Makefile.in                    |    7 +-
 libiberty/testsuite/demangle-expected              |   47 +
 libiberty/testsuite/rust-demangle-expected         |  161 +
 opcodes/ChangeLog                                  |   50 +
 opcodes/aarch64-asm-2.c                            | 1038 +++---
 opcodes/aarch64-asm.c                              |   74 +-
 opcodes/aarch64-asm.h                              |    2 +
 opcodes/aarch64-dis-2.c                            | 4551 ++++++++++----------
 opcodes/aarch64-dis.c                              |   63 +
 opcodes/aarch64-dis.h                              |    2 +
 opcodes/aarch64-opc-2.c                            |  117 +-
 opcodes/aarch64-opc.c                              |   64 +-
 opcodes/aarch64-opc.h                              |    4 +
 opcodes/aarch64-tbl.h                              |   54 +
 100 files changed, 5744 insertions(+), 4471 deletions(-)
 create mode 100644 gas/testsuite/gas/aarch64/advsimd-armv8_3.d
 create mode 100644 gas/testsuite/gas/aarch64/advsimd-armv8_3.s
 create mode 100644 gas/testsuite/gas/aarch64/fp-armv8_3.d
 create mode 100644 gas/testsuite/gas/aarch64/fp-armv8_3.s
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fcmla.d
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fcmla.l
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fcmla.s
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fjcvtzs.d
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fjcvtzs.l
 create mode 100644 gas/testsuite/gas/aarch64/illegal-fjcvtzs.s
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldapr.d
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldapr.l
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldapr.s
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldraa.d
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldraa.l
 create mode 100644 gas/testsuite/gas/aarch64/illegal-ldraa.s
 create mode 100644 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.d
 create mode 100644 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.l
 create mode 100644 gas/testsuite/gas/aarch64/illegal-nofp-armv8_3.s
 create mode 100644 gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.d
 create mode 100644 gas/testsuite/gas/aarch64/ldst-exclusive-armv8_3.s
 create mode 100644 gas/testsuite/gas/arc/cl-warn.s
 create mode 100644 gas/testsuite/gas/arc/cpu-pseudop-1.d
 create mode 100644 gas/testsuite/gas/arc/cpu-pseudop-1.s
 create mode 100644 gas/testsuite/gas/arc/cpu-pseudop-2.d
 create mode 100644 gas/testsuite/gas/arc/cpu-pseudop-2.s
 create mode 100644 gas/testsuite/gas/arc/cpu-warn2.s
 create mode 100644 libiberty/rust-demangle.c
 create mode 100644 libiberty/testsuite/rust-demangle-expected

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index fcc5b1c..8a18a6d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,17 @@
+2016-11-18  James Clarke  <jrtc27@jrtc27.com>
+
+	* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Don't convert
+	R_SPARC_GOTDATA_OP_HIX22 and R_SPARC_GOTDATA_OP_LOX10 to
+	R_SPARC_GOT* for non-local references. Instead, treat them like
+	R_SPARC_GOTDATA_HIX22/R_SPARC_GOTDATA_LOX10 when filling in the
+	immediate with the calculated relocation.
+
+2016-11-18  Nick Clifton  <nickc@redhat.com>
+
+	PR ld/20675
+	* elf32-metag.c (elf_metag_relocate_section): Replace abort with
+	an informative error message.
+
 2016-11-15  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
 
 	PR ld/20789
diff --git a/bfd/elf32-metag.c b/bfd/elf32-metag.c
index 1557a37..ac78324 100644
--- a/bfd/elf32-metag.c
+++ b/bfd/elf32-metag.c
@@ -1820,7 +1820,7 @@ elf_metag_relocate_section (bfd *output_bfd,
 	      }
 
 	    if (tls_type == GOT_UNKNOWN)
-	      abort();
+	      abort ();
 
 	    if ((off & 1) != 0)
 	      off &= ~1;
@@ -1880,7 +1880,14 @@ elf_metag_relocate_section (bfd *output_bfd,
 		    else
 		      {
 			/* We don't support changing the TLS model.  */
-			abort ();
+			/* PR 20675 */
+			if (bfd_link_pic (info))
+			  _bfd_error_handler (_("%B(%A): multiple TLS models are not supported"),
+					      input_bfd, input_section, name);
+			else
+			  _bfd_error_handler (_("%B(%A): shared library symbol %s encountered whilst performing a static link"),
+					      input_bfd, input_section, name);
+			return FALSE;
 		      }
 
 		    cur_off += 8;
diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c
index db8058f..e1c7b22 100644
--- a/bfd/elfxx-sparc.c
+++ b/bfd/elfxx-sparc.c
@@ -3164,14 +3164,12 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd,
 	case R_SPARC_GOTDATA_OP_HIX22:
 	case R_SPARC_GOTDATA_OP_LOX10:
 	  if (SYMBOL_REFERENCES_LOCAL (info, h))
-	    r_type = (r_type == R_SPARC_GOTDATA_OP_HIX22
-		      ? R_SPARC_GOTDATA_HIX22
-		      : R_SPARC_GOTDATA_LOX10);
-	  else
-	    r_type = (r_type == R_SPARC_GOTDATA_OP_HIX22
-		      ? R_SPARC_GOT22
-		      : R_SPARC_GOT10);
-	  howto = _bfd_sparc_elf_howto_table + r_type;
+	    {
+	      r_type = (r_type == R_SPARC_GOTDATA_OP_HIX22
+			? R_SPARC_GOTDATA_HIX22
+			: R_SPARC_GOTDATA_LOX10);
+	      howto = _bfd_sparc_elf_howto_table + r_type;
+	    }
 	  break;
 
 	case R_SPARC_GOTDATA_OP:
@@ -3193,6 +3191,8 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd,
 	  relocation = gdopoff (info, relocation);
 	  break;
 
+	case R_SPARC_GOTDATA_OP_HIX22:
+	case R_SPARC_GOTDATA_OP_LOX10:
 	case R_SPARC_GOT10:
 	case R_SPARC_GOT13:
 	case R_SPARC_GOT22:
@@ -4017,7 +4017,8 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd,
 	  r = bfd_reloc_ok;
 	}
       else if (r_type == R_SPARC_HIX22
-	       || r_type == R_SPARC_GOTDATA_HIX22)
+	       || r_type == R_SPARC_GOTDATA_HIX22
+	       || r_type == R_SPARC_GOTDATA_OP_HIX22)
 	{
 	  bfd_vma x;
 
@@ -4036,7 +4037,8 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd,
 				  relocation);
 	}
       else if (r_type == R_SPARC_LOX10
-	       || r_type == R_SPARC_GOTDATA_LOX10)
+	       || r_type == R_SPARC_GOTDATA_LOX10
+	       || r_type == R_SPARC_GOTDATA_OP_LOX10)
 	{
 	  bfd_vma x;
 
diff --git a/bfd/version.h b/bfd/version.h
index e6f720e..c74b66c 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20161116
+#define BFD_VERSION_DATE 20161118
 #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/binutils/ChangeLog b/binutils/ChangeLog
index 3347bdb..bbeec9c 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,7 @@
+2016-11-16  Mark Wielaard  <mark@klomp.org>
+
+	* cxxfilt.c (main): Recognize rust_demangling.
+
 2016-11-14  Rudy  <jacky.chouchou@yandex.ru>
 
 	PR binutils/20814
diff --git a/binutils/cxxfilt.c b/binutils/cxxfilt.c
index d5863ee..21e5b0d 100644
--- a/binutils/cxxfilt.c
+++ b/binutils/cxxfilt.c
@@ -241,6 +241,7 @@ main (int argc, char **argv)
     case gnat_demangling:
     case gnu_v3_demangling:
     case dlang_demangling:
+    case rust_demangling:
     case auto_demangling:
       valid_symbols = standard_symbol_characters ();
       break;
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index 441ace7..fe07dd4 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -2460,9 +2460,13 @@ process_debug_info (struct dwarf_section *section,
 
       this_set = find_cu_tu_set_v2 (cu_offset, do_types);
 
-      if (compunit.cu_version >= 5)
+      if (compunit.cu_version < 5)
+	compunit.cu_unit_type = DW_UT_compile;
+      else
 	{
 	  SAFE_BYTE_GET_AND_INC (compunit.cu_unit_type, hdrptr, 1, end);
+	  if (compunit.cu_unit_type == DW_UT_type)
+	    do_types = 1;
 
 	  SAFE_BYTE_GET_AND_INC (compunit.cu_pointer_size, hdrptr, 1, end);
 	}
@@ -2491,29 +2495,19 @@ process_debug_info (struct dwarf_section *section,
 	  compunit.cu_pointer_size = offset_size;
 	}
 
-      if (compunit.cu_version >= 5)
-	{
-	  dwarf_vma padding1_high, padding1_low;
-	  dwarf_vma padding2;
-
-	  SAFE_BYTE_GET64 (hdrptr, &padding1_high, &padding1_low, end);
-	  hdrptr += 8;
-	  if (padding1_high != 0 || padding1_low != 0)
-	    warn (_("Invalid padding1 (high %s, low %s) in compunit header\n"),
-		  dwarf_vmatoa ("x", padding1_high),
-		  dwarf_vmatoa ("x", padding1_low));
-
-	  SAFE_BYTE_GET_AND_INC (padding2, hdrptr, offset_size, end);
-	  if (padding2 != 0)
-	    warn (_("Invalid padding2 (%s) in compunit header\n"),
-		  dwarf_vmatoa ("x", padding2));
-	}
-
-      if (do_types)
+      if (compunit.cu_version >= 5 || do_types)
 	{
 	  SAFE_BYTE_GET64 (hdrptr, &signature_high, &signature_low, end);
 	  hdrptr += 8;
+	  if (!do_types && (signature_high != 0 || signature_low != 0))
+	    warn (_("Invalid signature (high %s, low %s) in compunit header\n"),
+		  dwarf_vmatoa ("x", signature_high),
+		  dwarf_vmatoa ("x", signature_low));
+
 	  SAFE_BYTE_GET_AND_INC (type_offset, hdrptr, offset_size, end);
+	  if (!do_types && type_offset != 0)
+	    warn (_("Invalid type_offset (%s) in compunit header\n"),
+		  dwarf_vmatoa ("x", type_offset));
 	}
 
       if ((do_loc || do_debug_loc || do_debug_ranges)
@@ -2610,6 +2604,15 @@ process_debug_info (struct dwarf_section *section,
 	  continue;
 	}
 
+      if (compunit.cu_unit_type != DW_UT_compile
+	  && compunit.cu_unit_type != DW_UT_type)
+	{
+	  warn (_("CU at offset %s contains corrupt or "
+		  "unsupported unit type: %d.\n"),
+		dwarf_vmatoa ("x", cu_offset), compunit.cu_unit_type);
+	  continue;
+	}
+
       free_abbrevs ();
 
       /* Process the abbrevs used by this compilation unit.  */
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 613833b..c95decc 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,59 @@
+2016-11-18  Claudiu Zissulescu  <claziss@synopsys.com>
+
+	* testsuite/gas/arc/cl-warn.s: New file.
+	* testsuite/gas/arc/cpu-pseudop-1.d: Likewise.
+	* testsuite/gas/arc/cpu-pseudop-1.s: Likewise.
+	* testsuite/gas/arc/cpu-pseudop-2.d: Likewise.
+	* testsuite/gas/arc/cpu-pseudop-2.s: Likewise.
+	* testsuite/gas/arc/cpu-warn2.s: Likewise.
+	* config/tc-arc.c (selected_cpu): Initialize.
+	(feature_type): New struct.
+	(feature_list): New variable.
+	(arc_check_feature): New function.
+	(arc_select_cpu): Check for .cpu duplicates. Don't overwrite the
+	current cpu features. Check if a feature is available for a given
+	cpu.
+	(md_parse_option): Test if features are available for a given cpu.
+
+2016-11-18  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+	* config/tc-aarch64.c (parse_operands): Handle AARCH64_OPND_IMM_ROT*.
+	* testsuite/gas/aarch64/advsimd-armv8_3.d: New.
+	* testsuite/gas/aarch64/advsimd-armv8_3.s: New.
+	* testsuite/gas/aarch64/illegal-fcmla.s: New.
+	* testsuite/gas/aarch64/illegal-fcmla.l: New.
+	* testsuite/gas/aarch64/illegal-fcmla.d: New.
+
+2016-11-18  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+	* testsuite/gas/aarch64/ldst-exclusive-armv8_3.s: Add ldaprb, ldaprh, ldapr tests.
+	* testsuite/gas/aarch64/ldst-exclusive-armv8_3.d: Likewise.
+	* testsuite/gas/aarch64/illegal-ldapr.s: Likewise.
+	* testsuite/gas/aarch64/illegal-ldapr.d: Likewise.
+	* testsuite/gas/aarch64/illegal-ldapr.l: Likewise.
+
+2016-11-18  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+	* testsuite/gas/aarch64/fp-armv8_3.s: Add fjcvtzs test.
+	* testsuite/gas/aarch64/fp-armv8_3.d: Likewise.
+	* testsuite/gas/aarch64/illegal-fjcvtzs.s: Likewise.
+	* testsuite/gas/aarch64/illegal-fjcvtzs.d: Likewise.
+	* testsuite/gas/aarch64/illegal-fjcvtzs.l: Likewise.
+	* testsuite/gas/aarch64/illegal-nofp-armv8_3.s: Likewise.
+	* testsuite/gas/aarch64/illegal-nofp-armv8_3.d: Likewise.
+	* testsuite/gas/aarch64/illegal-nofp-armv8_3.l: Likewise.
+
+2016-11-18  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+	* config/tc-aarch64.c (parse_operands): Handle AARCH64_OPND_ADDR_SIMM10.
+	(fix_insn): Likewise.
+	(warn_unpredictable_ldst): Handle ldst_imm10.
+	* testsuite/gas/aarch64/pac.s: Add ldraa and ldrab tests.
+	* testsuite/gas/aarch64/pac.d: Likewise.
+	* testsuite/gas/aarch64/illegal-ldraa.s: New.
+	* testsuite/gas/aarch64/illegal-ldraa.l: New.
+	* testsuite/gas/aarch64/illegal-ldraa.d: New.
+
 2016-11-15  Nick Clifton  <nickc@redhat.com>
 
 	PR gas/20803
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index e65daa0..7c518c7 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -5561,6 +5561,9 @@ parse_operands (char *str, const aarch64_opcode *opcode)
 	case AARCH64_OPND_SVE_UIMM7:
 	case AARCH64_OPND_SVE_UIMM8:
 	case AARCH64_OPND_SVE_UIMM8_53:
+	case AARCH64_OPND_IMM_ROT1:
+	case AARCH64_OPND_IMM_ROT2:
+	case AARCH64_OPND_IMM_ROT3:
 	  po_imm_nc_or_fail ();
 	  info->imm.value = val;
 	  break;
@@ -6024,6 +6027,25 @@ parse_operands (char *str, const aarch64_opcode *opcode)
 					      /* skip_p */ 0);
 	  break;
 
+	case AARCH64_OPND_ADDR_SIMM10:
+	  po_misc_or_fail (parse_address (&str, info));
+	  if (info->addr.pcrel || info->addr.offset.is_reg
+	      || !info->addr.preind || info->addr.postind)
+	    {
+	      set_syntax_error (_("invalid addressing mode"));
+	      goto failure;
+	    }
+	  if (inst.reloc.type != BFD_RELOC_UNUSED)
+	    {
+	      set_syntax_error (_("relocation not allowed"));
+	      goto failure;
+	    }
+	  assign_imm_if_const_or_fixup_later (&inst.reloc, info,
+					      /* addr_off_p */ 1,
+					      /* need_libopcodes_p */ 1,
+					      /* skip_p */ 0);
+	  break;
+
 	case AARCH64_OPND_ADDR_UIMM12:
 	  po_misc_or_fail (parse_address (&str, info));
 	  if (info->addr.pcrel || info->addr.offset.is_reg
@@ -6481,6 +6503,7 @@ warn_unpredictable_ldst (aarch64_instruction *instr, char *str)
     {
     case ldst_pos:
     case ldst_imm9:
+    case ldst_imm10:
     case ldst_unscaled:
     case ldst_unpriv:
       /* Loading/storing the base register is unpredictable if writeback.  */
@@ -7350,6 +7373,7 @@ fix_insn (fixS *fixP, uint32_t flags, offsetT value)
     case AARCH64_OPND_ADDR_SIMM7:
     case AARCH64_OPND_ADDR_SIMM9:
     case AARCH64_OPND_ADDR_SIMM9_2:
+    case AARCH64_OPND_ADDR_SIMM10:
     case AARCH64_OPND_ADDR_UIMM12:
       /* Immediate offset in an address.  */
       insn = get_aarch64_insn (buf);
diff --git a/gas/config/tc-arc.c b/gas/config/tc-arc.c
index 06aee48..376ac43 100644
--- a/gas/config/tc-arc.c
+++ b/gas/config/tc-arc.c
@@ -451,7 +451,23 @@ static const struct cpu_type
 };
 
 /* Information about the cpu/variant we're assembling for.  */
-static struct cpu_type selected_cpu;
+static struct cpu_type selected_cpu = { 0, 0, 0, 0, 0 };
+
+/* A table with options.  */
+static const struct feature_type
+{
+  unsigned feature;
+  unsigned cpus;
+  const char *name;
+}
+  feature_list[] =
+{
+  { ARC_CD, ARC_OPCODE_ARCV2, "code-density" },
+  { ARC_NPS400, ARC_OPCODE_ARC700, "nps400" },
+  { ARC_SPFP, ARC_OPCODE_ARCFPX, "single-precision FPX" },
+  { ARC_DPFP, ARC_OPCODE_ARCFPX, "double-precision FPX" },
+  { ARC_FPUDA, ARC_OPCODE_ARCv2EM, "double assist FP" }
+};
 
 /* Used by the arc_reloc_op table.  Order is important.  */
 #define O_gotoff  O_md1     /* @gotoff relocation.  */
@@ -775,6 +791,27 @@ md_number_to_chars_midend (char *buf, unsigned long long val, int n)
     }
 }
 
+/* Check if a feature is allowed for a specific CPU.  */
+
+static void
+arc_check_feature (void)
+{
+  unsigned i;
+
+  if (!selected_cpu.features
+      || !selected_cpu.name)
+    return;
+  for (i = 0; (i < ARRAY_SIZE (feature_list)); i++)
+    {
+      if ((selected_cpu.features & feature_list[i].feature)
+	  && !(selected_cpu.flags & feature_list[i].cpus))
+	{
+	  as_bad (_("invalid %s option for %s cpu"), feature_list[i].name,
+		  selected_cpu.name);
+	}
+    }
+}
+
 /* Select an appropriate entry from CPU_TYPES based on ARG and initialise
    the relevant static global variables.  Parameter SEL describes where
    this selection originated from.  */
@@ -790,6 +827,10 @@ arc_select_cpu (const char *arg, enum mach_selection_type sel)
   gas_assert (sel != MACH_SELECTION_FROM_DEFAULT
               || mach_selection_mode == MACH_SELECTION_NONE);
 
+  if ((mach_selection_mode == MACH_SELECTION_FROM_CPU_DIRECTIVE)
+      && (sel == MACH_SELECTION_FROM_CPU_DIRECTIVE))
+    as_bad (_("Multiple .cpu directives found"));
+
   /* Look for a matching entry in CPU_TYPES array.  */
   for (i = 0; cpu_types[i].name; ++i)
     {
@@ -807,22 +848,25 @@ arc_select_cpu (const char *arg, enum mach_selection_type sel)
                   && selected_cpu.mach != cpu_types[i].mach)
                 {
                   as_warn (_("Command-line value overrides \".cpu\" directive"));
-                  return;
                 }
+	      return;
             }
 
-          /* Initialise static global data about selected machine type.  */
-          selected_cpu.flags = cpu_types[i].flags;
-          selected_cpu.name = cpu_types[i].name;
-          selected_cpu.features = cpu_types[i].features;
-          selected_cpu.mach = cpu_types[i].mach;
-          cpu_flags = cpu_types[i].eflags;
+	  /* Initialise static global data about selected machine type.  */
+	  selected_cpu.flags = cpu_types[i].flags;
+	  selected_cpu.name = cpu_types[i].name;
+	  selected_cpu.features |= cpu_types[i].features;
+	  selected_cpu.mach = cpu_types[i].mach;
+	  cpu_flags = cpu_types[i].eflags;
           break;
         }
     }
 
   if (!cpu_types[i].name)
     as_fatal (_("unknown architecture: %s\n"), arg);
+
+  /* Check if set features are compatible with the chosen CPU.  */
+  arc_check_feature ();
   gas_assert (cpu_flags != 0);
   selected_cpu.eflags = (arc_initial_eflag & ~EF_ARC_MACH_MSK) | cpu_flags;
   mach_selection_mode = sel;
@@ -3304,11 +3348,8 @@ md_parse_option (int c, const char *arg ATTRIBUTE_UNUSED)
       break;
 
     case OPTION_CD:
-      /* This option has an effect only on ARC EM.  */
-      if (selected_cpu.flags & ARC_OPCODE_ARCv2EM)
-	selected_cpu.features |= ARC_CD;
-      else
-	as_warn (_("Code density option invalid for selected CPU"));
+      selected_cpu.features |= ARC_CD;
+      arc_check_feature ();
       break;
 
     case OPTION_RELAX:
@@ -3317,22 +3358,22 @@ md_parse_option (int c, const char *arg ATTRIBUTE_UNUSED)
 
     case OPTION_NPS400:
       selected_cpu.features |= ARC_NPS400;
+      arc_check_feature ();
       break;
 
     case OPTION_SPFP:
       selected_cpu.features |= ARC_SPFP;
+      arc_check_feature ();
       break;
 
     case OPTION_DPFP:
       selected_cpu.features |= ARC_DPFP;
+      arc_check_feature ();
       break;
 
     case OPTION_FPUDA:
-      /* This option has an effect only on ARC EM.  */
-      if (selected_cpu.flags & ARC_OPCODE_ARCv2EM)
-	selected_cpu.features |= ARC_FPUDA;
-      else
-	as_warn (_("FPUDA invalid for selected CPU"));
+      selected_cpu.features |= ARC_FPUDA;
+      arc_check_feature ();
       break;
 
     /* Dummy options are accepted but have no effect.  */
diff --git a/gas/testsuite/gas/aarch64/advsimd-armv8_3.d b/gas/testsuite/gas/aarch64/advsimd-armv8_3.d
new file mode 100644
index 0000000..0e477e4
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/advsimd-armv8_3.d
@@ -0,0 +1,33 @@
+#as: -march=armv8.3-a
+#objdump: -dr
+
+.*:     file format .*
+
+Disassembly of section \.text:
+
+0000000000000000 <.*>:
+[^:]+:	6ec3c441 	fcmla	v1.2d, v2.2d, v3.2d, #0
+[^:]+:	6ec3cc41 	fcmla	v1.2d, v2.2d, v3.2d, #90
+[^:]+:	6ec3d441 	fcmla	v1.2d, v2.2d, v3.2d, #180
+[^:]+:	6ec3dc41 	fcmla	v1.2d, v2.2d, v3.2d, #270
+[^:]+:	2e83cc41 	fcmla	v1.2s, v2.2s, v3.2s, #90
+[^:]+:	6e83cc41 	fcmla	v1.4s, v2.4s, v3.4s, #90
+[^:]+:	2e43cc41 	fcmla	v1.4h, v2.4h, v3.4h, #90
+[^:]+:	6e43cc41 	fcmla	v1.8h, v2.8h, v3.8h, #90
+[^:]+:	6f831041 	fcmla	v1.4s, v2.4s, v3.s\[0\], #0
+[^:]+:	6f833041 	fcmla	v1.4s, v2.4s, v3.s\[0\], #90


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [SCM]  users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16
@ 2016-11-16 17:58 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2016-11-16 17:58 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/dwarf5gcc-gdb has been updated
       via  6f67c9b86a08bd21368962450dac9aa3cc7cea77 (commit)
       via  84fd5bc7299e53b37fe3c97da85b6738fba83112 (commit)
       via  12df20264fd39f3603cf55398acfff4f83457472 (commit)
       via  68365773404376995f64506704ab0473b404f054 (commit)
       via  1c666b6929be0eda374b204c2637b36e4547e3c5 (commit)
       via  8da81c30016461fd41e32aef83a8a6bf98050a6a (commit)
       via  4cb771f214ed6a2102e37bce255c6be5d0642f3a (commit)
       via  ff7ba33e8aae2ee8ec607d3f1f4b96f7cb1a92b9 (commit)
       via  4c62b19fd2e6b81ce7cbb7d01e84c09352ccf224 (commit)
       via  5cc8c7310338224d65aa14c4256d4d7539e0dd45 (commit)
       via  b22e99fdaf2efe58161c382bbd55f4572ba49eef (commit)
       via  b7f38fdae7c75e1d13abd455b3931950db28d22b (commit)
       via  93ca393659ef6714724749950301757f47e5e9fd (commit)
       via  32ce946fd83f08a4f1486de02d3f83870b36b28e (commit)
       via  9d734efa1034d266249751978f95a686ec9d19c6 (commit)
       via  35fd2ddeb1d90f1750401cfb6d01fe055656b88d (commit)
       via  db58b3735f45345c06cb9a14d0f83f5b26c1ebf3 (commit)
       via  80bb3407f6891aff5dbed5b2fd5c3dae8f227319 (commit)
       via  63f2433dbccc7ddf8812fefd6eed0e6dd2f88955 (commit)
       via  29df15201399610c3887382f004af337e3fe5601 (commit)
      from  8aa283e8758ef15b2f4d3fd53371b865de6f0ba9 (commit)

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

- Log -----------------------------------------------------------------
commit 6f67c9b86a08bd21368962450dac9aa3cc7cea77
Merge: 8da81c3 84fd5bc
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 16 18:58:11 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16

commit 84fd5bc7299e53b37fe3c97da85b6738fba83112
Merge: 8aa283e 12df202
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 16 18:58:11 2016 +0100

    Merge branch 'dwarf5gcc-gdb-callsite' into dwarf5gcc-gdb-callsite-macro

commit 12df20264fd39f3603cf55398acfff4f83457472
Merge: 5081154 6836577
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 16 18:58:10 2016 +0100

    Merge branch 'dwarf5gcc-gdb' into dwarf5gcc-gdb-callsite

commit 68365773404376995f64506704ab0473b404f054
Merge: c11f9e4 1c666b6
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 16 18:58:09 2016 +0100

    Merge branch 'dwarf5gcc' into dwarf5gcc-gdb

commit 8da81c30016461fd41e32aef83a8a6bf98050a6a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed Nov 16 18:57:30 2016 +0100

    .

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

Summary of changes:
 bfd/ChangeLog                                      |   20 ++
 bfd/coffcode.h                                     |    2 +-
 bfd/elf32-avr.c                                    |   99 ++++--
 bfd/elf64-x86-64.c                                 |   11 +-
 bfd/version.h                                      |    2 +-
 binutils/ChangeLog                                 |    9 +
 binutils/dlltool.c                                 |   21 +-
 binutils/dwarf.c                                   |   26 ++
 gas/ChangeLog                                      |    6 +
 gas/config/tc-sparc.c                              |    5 +-
 gdb/ChangeLog                                      |   47 +++
 gdb/ada-lang.c                                     |    4 +-
 gdb/break-catch-throw.c                            |    2 +-
 gdb/breakpoint.c                                   |    2 +-
 gdb/cli/cli-dump.c                                 |    4 +-
 gdb/common/common-defs.h                           |    2 +-
 gdb/common/gdb_unique_ptr.h                        |  353 +-------------------
 gdb/dtrace-probe.c                                 |    2 +-
 gdb/dwarf2read.c                                   |   20 ++
 gdb/elfread.c                                      |    2 +-
 gdb/gnulib/config.in                               |    3 +
 gdb/gnulib/configure                               |   13 +-
 gdb/gnulib/import/Makefile.am                      |    1 +
 gdb/gnulib/import/Makefile.in                      |    2 +
 gdb/gnulib/import/canonicalize-lgpl.c              |   10 +-
 gdb/gnulib/import/extra/snippet/c++defs.h          |   75 +++--
 gdb/gnulib/import/m4/stdint.m4                     |   11 +-
 gdb/gnulib/import/m4/stdlib_h.m4                   |    5 +-
 gdb/gnulib/import/math.in.h                        |   14 +-
 gdb/gnulib/import/stdlib.in.h                      |   15 +
 gdb/gnulib/import/sys_time.in.h                    |    7 +
 gdb/gnulib/update-gnulib.sh                        |    2 +-
 gdb/mi/mi-main.c                                   |    2 +-
 gdb/nat/linux-btrace.c                             |   19 +-
 gdb/parse.c                                        |    2 +-
 gdb/printcmd.c                                     |    2 +-
 gdb/testsuite/ChangeLog                            |    5 +
 .../gdb.dwarf2/bitfield-parent-optimized-out.exp   |    5 +-
 gdb/testsuite/gdb.dwarf2/formdata16.c              |   22 ++
 gdb/testsuite/gdb.dwarf2/formdata16.exp            |   77 +++++
 gdb/testsuite/lib/dwarf.exp                        |    4 +
 ld/ChangeLog                                       |   18 +
 ld/lexsup.c                                        |    1 +
 ld/testsuite/ld-avr/pr20789.d                      |   14 +
 ld/testsuite/ld-avr/pr20789.s                      |   12 +
 ld/testsuite/ld-x86-64/pr20800a.S                  |   17 +
 ld/testsuite/ld-x86-64/pr20800b.S                  |   21 ++
 ld/testsuite/ld-x86-64/x86-64.exp                  |    8 +
 48 files changed, 569 insertions(+), 457 deletions(-)
 create mode 100644 gdb/testsuite/gdb.dwarf2/formdata16.c
 create mode 100644 gdb/testsuite/gdb.dwarf2/formdata16.exp
 create mode 100644 ld/testsuite/ld-avr/pr20789.d
 create mode 100644 ld/testsuite/ld-avr/pr20789.s
 create mode 100644 ld/testsuite/ld-x86-64/pr20800a.S
 create mode 100644 ld/testsuite/ld-x86-64/pr20800b.S

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index b8a1ba4..fcc5b1c 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,23 @@
+2016-11-15  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+	PR ld/20789
+	* bfd/elf32-avr.c (elf32_avr_adjust_diff_reloc_value): Do signed
+	manipulation of diff value, and don't assume sym2 is less than sym1.
+	(elf32_avr_adjust_reloc_if_spans_insn): New function.
+	(elf32_avr_relax_delete_bytes): Use elf32_avr_adjust_diff_reloc_value,
+	and remove redundant did_pad.
+
+
+2016-11-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/20800
+	* elf64-x86-64.c (elf_x86_64_relocate_section): Also check
+	plt_got.offset for R_X86_64_PLTOFF64.
+
+2016-11-14  Nick Clifton  <nickc@redhat.com>
+
+	* coffcode.h (coff_slurp_symbol_table): Fix typo: Faal -> Fall.
+
 2016-11-11  Luke Allardyce  <lukeallardyce@gmail.com>
 
 	PR ld/20722
diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index b926c65..f5605d7 100644
--- a/bfd/coffcode.h
+++ b/bfd/coffcode.h
@@ -5075,7 +5075,7 @@ coff_slurp_symbol_table (bfd * abfd)
 		 abfd, src->u.syment.n_sclass,
 		 dst->symbol.section->name, dst->symbol.name);
 	      ret = FALSE;
-	      /* Faal through.  */
+	      /* Fall through.  */
 	    case C_HIDDEN:	/* Ext symbol in dmert public lib.  */
 	      /* PR 20722: These symbols can also be generated by
 		 building DLLs with --gc-sections enabled.  */
diff --git a/bfd/elf32-avr.c b/bfd/elf32-avr.c
index 89c99fd..46a2b27 100644
--- a/bfd/elf32-avr.c
+++ b/bfd/elf32-avr.c
@@ -1742,22 +1742,22 @@ elf32_avr_adjust_diff_reloc_value (bfd *abfd,
   reloc_contents = isec_contents + irel->r_offset;
 
   /* Read value written in object file. */
- bfd_vma x = 0;
+  bfd_signed_vma x = 0;
   switch (ELF32_R_TYPE (irel->r_info))
   {
   case R_AVR_DIFF8:
     {
-      x = *reloc_contents;
+      x = bfd_get_signed_8 (abfd, reloc_contents);
       break;
     }
   case R_AVR_DIFF16:
     {
-      x = bfd_get_16 (abfd, reloc_contents);
+      x = bfd_get_signed_16 (abfd, reloc_contents);
       break;
     }
   case R_AVR_DIFF32:
     {
-      x = bfd_get_32 (abfd, reloc_contents);
+      x = bfd_get_signed_32 (abfd, reloc_contents);
       break;
     }
   default:
@@ -1771,30 +1771,41 @@ elf32_avr_adjust_diff_reloc_value (bfd *abfd,
      symval (<start_of_section>) + reloc addend. Compute the start and end
      addresses and check if the shrinked insn falls between sym1 and sym2. */
 
-  bfd_vma end_address = symval + irel->r_addend;
-  bfd_vma start_address = end_address - x;
+  bfd_vma sym2_address = symval + irel->r_addend;
+  bfd_vma sym1_address = sym2_address - x;
+
+  /* Don't assume sym2 is bigger than sym1 - the difference
+     could be negative. Compute start and end addresses, and
+     use those to see if they span shrinked_insn_address. */
+
+  bfd_vma start_address = sym1_address < sym2_address
+    ? sym1_address : sym2_address;
+  bfd_vma end_address = sym1_address > sym2_address
+    ? sym1_address : sym2_address;
 
-  /* Reduce the diff value by count bytes and write it back into section
-    contents. */
 
   if (shrinked_insn_address >= start_address
       && shrinked_insn_address <= end_address)
   {
+    /* Reduce the diff value by count bytes and write it back into section
+       contents. */
+    bfd_signed_vma new_diff = x < 0 ? x + count : x - count;
+
     switch (ELF32_R_TYPE (irel->r_info))
     {
     case R_AVR_DIFF8:
       {
-        *reloc_contents = (x - count);
+        bfd_put_signed_8 (abfd, new_diff, reloc_contents);
         break;
       }
     case R_AVR_DIFF16:
       {
-        bfd_put_16 (abfd, (x - count) & 0xFFFF, reloc_contents);
+        bfd_put_signed_16 (abfd, new_diff & 0xFFFF, reloc_contents);
         break;
       }
     case R_AVR_DIFF32:
       {
-        bfd_put_32 (abfd, (x - count) & 0xFFFFFFFF, reloc_contents);
+        bfd_put_signed_32 (abfd, new_diff & 0xFFFFFFFF, reloc_contents);
         break;
       }
     default:
@@ -1806,6 +1817,43 @@ elf32_avr_adjust_diff_reloc_value (bfd *abfd,
   }
 }
 
+static void
+elf32_avr_adjust_reloc_if_spans_insn (bfd *abfd,
+                                      asection *isec,
+                                      Elf_Internal_Rela *irel,  bfd_vma symval,
+                                      bfd_vma shrinked_insn_address,
+                                      bfd_vma shrink_boundary,
+                                      int count)
+{
+
+  if (elf32_avr_is_diff_reloc (irel))
+    {
+      elf32_avr_adjust_diff_reloc_value (abfd, isec, irel,
+                                         symval,
+                                         shrinked_insn_address,
+                                         count);
+    }
+  else
+    {
+      bfd_vma reloc_value = symval + irel->r_addend;
+      bfd_boolean addend_within_shrink_boundary =
+        (reloc_value <= shrink_boundary);
+
+      bfd_boolean reloc_spans_insn =
+        (symval <= shrinked_insn_address
+         && reloc_value > shrinked_insn_address
+         && addend_within_shrink_boundary);
+
+      if (! reloc_spans_insn)
+        return;
+
+      irel->r_addend -= count;
+
+      if (debug_relax)
+        printf ("Relocation's addend needed to be fixed \n");
+    }
+}
+
 /* Delete some bytes from a section while changing the size of an instruction.
    The parameter "addr" denotes the section-relative offset pointing just
    behind the shrinked instruction. "addr+count" point at the first
@@ -1834,7 +1882,6 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
   struct avr_relax_info *relax_info;
   struct avr_property_record *prop_record = NULL;
   bfd_boolean did_shrink = FALSE;
-  bfd_boolean did_pad = FALSE;
 
   symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
   sec_shndx = _bfd_elf_section_from_bfd_section (abfd, sec);
@@ -1915,7 +1962,6 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
          to remember we didn't delete anything i.e. don't set did_shrink,
          so that we don't corrupt reloc offsets or symbol values.*/
       memset (contents + toaddr - count, fill, count);
-      did_pad = TRUE;
 
       /* Adjust the TOADDR to avoid moving symbols located at the address
          of the property record, which has not moved.  */
@@ -2016,7 +2062,6 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
                    bfd_vma shrink_boundary = (reloc_toaddr
                                               + sec->output_section->vma
                                               + sec->output_offset);
-                   bfd_boolean addend_within_shrink_boundary = FALSE;
 
                    symval += sym_sec->output_section->vma
                              + sym_sec->output_offset;
@@ -2031,31 +2076,11 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
                              (unsigned int) (symval + irel->r_addend),
                              (unsigned int) shrinked_insn_address);
 
-                   /* If we padded bytes, then the boundary didn't change,
-                      so there's no need to adjust addends pointing at the boundary.
-                      If we didn't pad, then we actually shrank the boundary, so
-                      addends pointing at the boundary need to be adjusted too. */
-                    addend_within_shrink_boundary = did_pad
-                      ? ((symval + irel->r_addend) < shrink_boundary)
-                      : ((symval + irel->r_addend) <= shrink_boundary);
-
-                   if (symval <= shrinked_insn_address
-                       && (symval + irel->r_addend) > shrinked_insn_address
-                       && addend_within_shrink_boundary)
-                     {
-                       if (elf32_avr_is_diff_reloc (irel))
-                         {
-                           elf32_avr_adjust_diff_reloc_value (abfd, isec, irel,
+                   elf32_avr_adjust_reloc_if_spans_insn (abfd, isec, irel,
                                                          symval,
                                                          shrinked_insn_address,
-                                                        count);
-                         }
-
-                       irel->r_addend -= count;
-
-                       if (debug_relax)
-                         printf ("Relocation's addend needed to be fixed \n");
-                     }
+                                                         shrink_boundary,
+                                                         count);
                  }
 	       /* else...Reference symbol is absolute.  No adjustment needed.  */
 	     }
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 76f09bd..05a4776 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -4693,10 +4693,17 @@ do_ifunc_pointer:
 	     symbols it's the symbol itself relative to GOT.  */
 	  if (h != NULL
 	      /* See PLT32 handling.  */
-	      && h->plt.offset != (bfd_vma) -1
+	      && (h->plt.offset != (bfd_vma) -1
+		  || eh->plt_got.offset != (bfd_vma) -1)
 	      && htab->elf.splt != NULL)
 	    {
-	      if (htab->plt_bnd != NULL)
+	      if (eh->plt_got.offset != (bfd_vma) -1)
+		{
+		  /* Use the GOT PLT.  */
+		  resolved_plt = htab->plt_got;
+		  plt_offset = eh->plt_got.offset;
+		}
+	      else if (htab->plt_bnd != NULL)
 		{
 		  resolved_plt = htab->plt_bnd;
 		  plt_offset = eh->plt_bnd.offset;
diff --git a/bfd/version.h b/bfd/version.h
index 2734af3..e6f720e 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20161113
+#define BFD_VERSION_DATE 20161116
 #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/binutils/ChangeLog b/binutils/ChangeLog
index 4c4bb6b..3347bdb 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,12 @@
+2016-11-14  Rudy  <jacky.chouchou@yandex.ru>
+
+	PR binutils/20814
+	* dlltool.c (struct export): Remove hint field.
+	(make_one_lib_file): Store the ordinal value for IDATA6 not the
+	hint.
+	(gen_lib_file): Delete reference to hint field.
+	(mangle_defs): Delete computation of hint field.
+
 2016-11-11  Nick Clifton  <nickc@redhat.com>
 
 	PR binutils/20751
diff --git a/binutils/dlltool.c b/binutils/dlltool.c
index e7b40ee..4cde91a 100644
--- a/binutils/dlltool.c
+++ b/binutils/dlltool.c
@@ -780,10 +780,9 @@ typedef struct export
   int ordinal;
   int constant;
   int noname;		/* Don't put name in image file.  */
-  int private;	/* Don't put reference in import lib.  */
+  int private;		/* Don't put reference in import lib.  */
   int data;
-  int hint;
-  int forward;	/* Number of forward label, 0 means no forward.  */
+  int forward;		/* Number of forward label, 0 means no forward.  */
   struct export *next;
 }
 export_type;
@@ -2776,10 +2775,8 @@ make_one_lib_file (export_type *exp, int i, int delay)
 	case IDATA6:
 	  if (!exp->noname)
 	    {
-	      /* This used to add 1 to exp->hint.  I don't know
-		 why it did that, and it does not match what I see
-		 in programs compiled with the MS tools.  */
-	      int idx = exp->hint;
+	      int idx = exp->ordinal;
+
 	      if (exp->its_name)
 	        si->size = strlen (exp->its_name) + 3;
 	      else
@@ -3263,7 +3260,6 @@ gen_lib_file (int delay)
 	  alias_exp.noname = exp->noname;
 	  alias_exp.private = exp->private;
 	  alias_exp.data = exp->data;
-	  alias_exp.hint = exp->hint;
 	  alias_exp.forward = exp->forward;
 	  alias_exp.next = exp->next;
 	  n = make_one_lib_file (&alias_exp, i + PREFIX_ALIAS_BASE, delay);
@@ -3927,10 +3923,8 @@ mangle_defs (void)
 {
   /* First work out the minimum ordinal chosen.  */
   export_type *exp;
-
-  int i;
-  int hint = 0;
   export_type **d_export_vec = xmalloc (sizeof (export_type *) * d_nfuncs);
+  int i;
 
   inform (_("Processing definitions"));
 
@@ -3959,11 +3953,6 @@ mangle_defs (void)
 
   qsort (d_exports_lexically, i, sizeof (export_type *), nfunc);
 
-  /* Fill exp entries with their hint values.  */
-  for (i = 0; i < d_nfuncs; i++)
-    if (!d_exports_lexically[i]->noname || show_allnames)
-      d_exports_lexically[i]->hint = hint++;
-
   inform (_("Processed definitions"));
 }
 
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index b778014..441ace7 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -1708,6 +1708,32 @@ read_and_display_attr_value (unsigned long attribute,
       data += 8;
       break;
 
+    case DW_FORM_data16:
+      if (!do_loc)
+	{
+	  dwarf_vma left_high_bits, left_low_bits;
+	  dwarf_vma right_high_bits, right_low_bits;
+
+	  SAFE_BYTE_GET64 (data, &left_high_bits, &left_low_bits, end);
+	  SAFE_BYTE_GET64 (data + 8, &right_high_bits, &right_low_bits, end);
+	  if (byte_get == byte_get_little_endian)
+	    {
+	      /* Swap them.  */
+	      left_high_bits ^= right_high_bits;
+	      right_high_bits ^= left_high_bits;
+	      left_high_bits ^= right_high_bits;
+	      left_low_bits ^= right_low_bits;
+	      right_low_bits ^= left_low_bits;
+	      left_low_bits ^= right_low_bits;
+	    }
+	  printf (" 0x%08" DWARF_VMA_FMT "x%08" DWARF_VMA_FMT "x"
+		  "%08" DWARF_VMA_FMT "x%08" DWARF_VMA_FMT "x",
+		  left_high_bits, left_low_bits, right_high_bits,
+		  right_low_bits);
+	}
+      data += 16;
+      break;
+
     case DW_FORM_string:
       if (!do_loc)
 	printf (" %.*s", (int) (end - data), data);
diff --git a/gas/ChangeLog b/gas/ChangeLog
index f5836ac..613833b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2016-11-15  Nick Clifton  <nickc@redhat.com>
+
+	PR gas/20803
+	* config/tc-sparc.c (cons_fix_new_sparc): Use unaligned relocs in
+	the .eh_frame section.
+
 2016-11-13  Anthony Green  <green@moxielogic.org>
 
 	* config/tc-moxie.c (md_assemble): Assemble 'bad' opcode.
diff --git a/gas/config/tc-sparc.c b/gas/config/tc-sparc.c
index 70f5bfb..d7b9a98 100644
--- a/gas/config/tc-sparc.c
+++ b/gas/config/tc-sparc.c
@@ -4957,7 +4957,10 @@ cons_fix_new_sparc (fragS *frag,
 	  case 8: r = BFD_RELOC_SPARC_TLS_DTPOFF64; break;
 	  }
     }
-  else if (sparc_no_align_cons)
+  else if (sparc_no_align_cons
+	   || /* PR 20803 - relocs in the .eh_frame section
+		 need to support unaligned access.  */
+	   strcmp (now_seg->name, ".eh_frame") == 0)
     {
       switch (nbytes)
 	{
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b4398f6..666beb6 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,50 @@
+2016-11-15  Pedro Alves  <palves@redhat.com>
+
+	* gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
+	38237baf99386101934cd93278023aa4ae523ec0.
+	* gnulib/configure, gnulib/config.in: Regenerate.
+	* gnulib/import/Makefile.am: Regenerate.
+	* gnulib/import/Makefile.in: Regenerate.
+	* gnulib/import/canonicalize-lgpl.c: Update.
+	* gnulib/import/extra/snippet/c++defs.h: Update.
+	* gnulib/import/m4/stdint.m4: Update.
+	* gnulib/import/m4/stdlib_h.m4: Update.
+	* gnulib/import/math.in.h: Update.
+	* gnulib/import/stdlib.in.h: Update.
+	* gnulib/import/sys_time.in.h: Update.
+
+2016-11-15  Pedro Alves  <palves@redhat.com>
+
+	* common/common-defs.h: Update comment.
+	* common/gdb_unique_ptr.h: Update header comment and copyright
+	year.
+	(gdb::unique_ptr, gdb::move): Delete.
+
+2016-11-15  Pedro Alves  <palves@redhat.com>
+
+	* ada-lang.c (create_excep_cond_exprs): Use std::move instead of
+	gdb::move.
+	* break-catch-throw.c (handle_gnu_v3_exceptions): Use
+	std::unique_ptr instead of gdb::unique_ptr.
+	* breakpoint.c (watch_command_1): Use std::move instead of
+	gdb::move.
+	* cli/cli-dump.c (dump_memory_to_file, restore_binary_file): Use
+	std::unique_ptr instead of gdb::unique_ptr.
+	* dtrace-probe.c (dtrace_process_dof_probe): Use std::move instead
+	of gdb::move.
+	* elfread.c (elf_read_minimal_symbols): Use std::unique_ptr
+	instead of gdb::unique_ptr.
+	* mi/mi-main.c (mi_cmd_data_read_memory): Use std::unique_ptr
+	instead of gdb::unique_ptr.
+	* parse.c (parse_expression_for_completion): Use std::move instead
+	of gdb::move.
+	* printcmd.c (display_command): std::move instead of gdb::move.
+
+2016-11-14  Markus Metzger  <markus.t.metzger@intel.com>
+
+	* nat/linux-btrace.c (perf_event_read): Allow data_head < size.
+	* nat/linux-btrace.c (perf_event_read_all): Do not adjust size.
+
 2016-11-12  Tom Tromey  <tom@tromey.com>
 
 	* rust-exp.y (super_name): Use std::vector.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index d9b46c6..73f7964 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -12347,7 +12347,7 @@ create_excep_cond_exprs (struct ada_catchpoint *c)
 	  s = cond_string;
 	  TRY
 	    {
-	      exp = gdb::move (parse_exp_1 (&s, bl->address,
+	      exp = std::move (parse_exp_1 (&s, bl->address,
 					    block_for_pc (bl->address),
 					    0));
 	    }
@@ -12360,7 +12360,7 @@ create_excep_cond_exprs (struct ada_catchpoint *c)
 	  END_CATCH
 	}
 
-      ada_loc->excep_cond_expr = gdb::move (exp);
+      ada_loc->excep_cond_expr = std::move (exp);
     }
 
   do_cleanups (old_chain);
diff --git a/gdb/break-catch-throw.c b/gdb/break-catch-throw.c
index 6136a57..955b2ff 100644
--- a/gdb/break-catch-throw.c
+++ b/gdb/break-catch-throw.c
@@ -399,7 +399,7 @@ handle_gnu_v3_exceptions (int tempflag, char *except_rx, char *cond_string,
 			   _("invalid type-matching regexp"));
     }
 
-  gdb::unique_ptr<exception_catchpoint> cp (new exception_catchpoint ());
+  std::unique_ptr<exception_catchpoint> cp (new exception_catchpoint ());
 
   init_catchpoint (&cp->base, get_current_arch (), tempflag, cond_string,
 		   &gnu_v3_exception_catchpoint_ops);
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 245e078..d139747 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -11378,7 +11378,7 @@ watch_command_1 (const char *arg, int accessflag, int from_tty,
   b->thread = thread;


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-11-23 22:20 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-18 19:53 [SCM] users/jkratoch/dwarf5gcc-gdb: Merge branch 'dwarf5gcc-gdb-callsite-macro' into dwarf5gcc-gdb-callsite-macro-data16 jkratoch
  -- strict thread matches above, loose matches on Subject: below --
2016-11-23 22:20 jkratoch
2016-11-20 20:58 jkratoch
2016-11-20 20:10 jkratoch
2016-11-19  8:49 jkratoch
2016-11-18 19:20 jkratoch
2016-11-16 17:58 jkratoch

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).