public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-21 17:31 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-21 17:31 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  2af3f7cc3675de402387152f5d1737df9c266287 (commit)
       via  59bc95f8092bd2b5765532e3c3ea010476cf5711 (commit)
       via  c7f5689e0caf07eafb0dd6c0160938de33801535 (commit)
       via  4dd39c23dc43f7226e1a473f1836dc50d4b9ceb2 (commit)
       via  3c31c689159535ec278253668e1f59155f18da2b (commit)
       via  56298620acb02ab589ce3ddf398788227ab20211 (commit)
       via  3cf257f8b0df4af0a68db2cb14e983302a3b0764 (commit)
       via  c9c91bfaac656c5494a6e2e5e7385b399089cdaf (commit)
       via  e5e495bffa394bfd7f4ec6b6c14d3c67fbf5dd02 (commit)
       via  f70d4b4a5bd751ca70c85768a02c81672d4d3e2a (commit)
       via  0da75641e19f6573efe6e00426bf2cbe75756ce3 (commit)
       via  e623bec8b24479582819cc98c0de3a76ee221ed9 (commit)
       via  c62c9404682810e55f49ef8fbd11402a267779e8 (commit)
       via  5d1ae1dca72ef60011332aad8bfd11c860073127 (commit)
       via  1687ff75d93da156d8d8c3c3c9dab8b8ca9e7873 (commit)
       via  8bf0c5012e6a11f6d475651e314731de758360ad (commit)
       via  3092a33668a6c15b9728a43d80e29cf699c3bf93 (commit)
       via  b4f5b984e5e771e75cee43942e56455531a02e68 (commit)
       via  43cc5389bc4662b31cad02a9f13358bd367d0ab3 (commit)
       via  a9dba87af1aeabffb01769004ab893173f3ef472 (commit)
       via  e5713223cbc1025f484fa2548d58f74173646b8a (commit)
       via  f0681695daa9d4fd493f3ca88f194675c9affbff (commit)
       via  3bae5716a5b4c0228a7fba7f5aab2dcf1f2f35d7 (commit)
       via  cea4fa873215bfb45508a34f99e998cff75467f3 (commit)
       via  245a1e01ed1a4a91de0f1b51b7e2cb5673d85dfd (commit)
       via  6d937d7a381aaead8f1fabdbc3ad03d5ae3980e2 (commit)
       via  147c65bdf374e9f9250d20c2428cde8c3c18a9e7 (commit)
       via  4e8e0acf06979774360a56ae6aa5756d66cdb344 (commit)
       via  64517994807b0d6bb3c6fd106f117c03242fac72 (commit)
       via  92f7d783c1038841beacaba28a5f5d740a5ccad6 (commit)
       via  ae0264a6474d777650d65da261732748126f0190 (commit)
       via  f4203b2b8830e66e5229b7f9d30cd29b088566b5 (commit)
       via  6e7e1744e96abbf1a4229d5f269caf2cc921ec58 (commit)
       via  7a6e7fcc77997bf7679cce4f1cfebcd57ba8af70 (commit)
       via  1933fd8ee01ad2e74a9c6341bc40f54962a8f889 (commit)
       via  eb026f09eb6fcb96a5de1e655cdde041ba44affb (commit)
       via  50e1d299ef1d21b0833c2fe1484d3cc374e6486f (commit)
       via  dd47d677f0164800ceba1ab67f6cd2add0021101 (commit)
       via  8038128b23576f93a56caf7779a4406a84716727 (commit)
       via  ec8df23454873916c6b6b918967af631b268acd8 (commit)
       via  3e3e7faebe89bfab0d245040b19fd7347d186065 (commit)
       via  3aa2d05a728216bbb99dbb5718be9bb36429cf41 (commit)
       via  59cc050d893d1e8c75547de950a35e809588f12f (commit)
       via  c8f6abd10d62f82874e31959bf986606bd919d39 (commit)
       via  d2a03b77450dce58f6b4f9f7fdd3c346a555bcf7 (commit)
       via  9d43118ee54de3fbffea27a5a10ae11ba5ee00d0 (commit)
       via  535b785fb0c97220dea23a18f07baad6b5d77ae5 (commit)
       via  087ea22225435ab5800e6c29671acab40dc6ca82 (commit)
       via  a406db9163e45ab55c3addff2ce1e61796f1bddc (commit)
       via  427c9f766cef14991a5537e4b98f814459bd2c18 (commit)
       via  7420672b3840207f8056c1b307ccf84a2a642655 (commit)
       via  c2a79cd51ba9d0823e7efc564938611958138c03 (commit)
       via  2f07894ea4038f078f331f4ec4872040bf5da9b6 (commit)
       via  5f73e0a017395052fda339ebad7c2386d553262e (commit)
       via  b7c871edcd83ccdc5fcd8148a7f433efd6b52255 (commit)
       via  0d5c69990c1992289f7b286600a43de4d5d44062 (commit)
       via  21873064e835ffb16e92048482e34f19e6a415da (commit)
       via  2b351b19efc8dd36ac8a8bda005c7411536b93ec (commit)
       via  a0a110b0dd5077373c4102d1502130eb159c366b (commit)
       via  4ebcabb38ef8acfb6e26d2b40e00abfe10aea895 (commit)
       via  854062337d056ffc8b805e0d5a8c1a66b99a4076 (commit)
       via  0a7d38897b9fb1ec7a064ca3347cbac3ba49e5ac (commit)
       via  91cb9803fcf6d1c7001395d80f79120ae8e6338a (commit)
       via  bc4e12ded1d4c8d589d82b2a10ade6b47f219db3 (commit)
       via  4070765b1a1640ff8f43483cd9ee06727f658dfe (commit)
       via  8cc2a9796024f2dd472985cc8ed1c65a85ec9a35 (commit)
       via  0c38a3d1942067100580e9673bcf0cbe27f3d6e8 (commit)
       via  d8cbc93b65ace8a36002839d5ee944efff59d643 (commit)
      from  55017491feae3bd6d4e90862a2e850b39bfca446 (commit)

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

- Log -----------------------------------------------------------------
commit 2af3f7cc3675de402387152f5d1737df9c266287
Merge: c7f5689 59bc95f
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun May 21 19:17:52 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit c7f5689e0caf07eafb0dd6c0160938de33801535
Merge: 3cf257f 4dd39c2
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun May 21 08:31:44 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 3cf257f8b0df4af0a68db2cb14e983302a3b0764
Merge: e5e495b c9c91bf
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 23:57:43 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit e5e495bffa394bfd7f4ec6b6c14d3c67fbf5dd02
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 23:56:58 2017 +0200

    .

commit f70d4b4a5bd751ca70c85768a02c81672d4d3e2a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 22:12:58 2017 +0200

    .

commit 0da75641e19f6573efe6e00426bf2cbe75756ce3
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 21:42:03 2017 +0200

    .

commit e623bec8b24479582819cc98c0de3a76ee221ed9
Merge: 5d1ae1d c62c940
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 20:51:13 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 5d1ae1dca72ef60011332aad8bfd11c860073127
Merge: 8bf0c50 1687ff7
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 20:37:20 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 8bf0c5012e6a11f6d475651e314731de758360ad
Merge: 3bae571 3092a33
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sat May 20 20:18:22 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 3bae5716a5b4c0228a7fba7f5aab2dcf1f2f35d7
Merge: 245a1e0 cea4fa8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri May 19 22:36:32 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 245a1e01ed1a4a91de0f1b51b7e2cb5673d85dfd
Merge: 427c9f7 6d937d7
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri May 19 22:25:38 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 427c9f766cef14991a5537e4b98f814459bd2c18
Merge: 2f07894 7420672
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 17 18:48:14 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 2f07894ea4038f078f331f4ec4872040bf5da9b6
Merge: 5501749 5f73e0a
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 17 18:47:54 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

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

Summary of changes:
 bfd/ChangeLog                                      |  127 ++++++++++
 bfd/aoutx.h                                        |    4 +-
 bfd/arc-got.h                                      |    6 +-
 bfd/archures.c                                     |    7 +-
 bfd/bfd-in2.h                                      |    7 +-
 bfd/cpu-sparc.c                                    |   30 +++
 bfd/elf-m10300.c                                   |    4 +-
 bfd/elf.c                                          |    2 +-
 bfd/elf32-arc.c                                    |   22 +-
 bfd/elf32-arm.c                                    |    2 +-
 bfd/elf32-bfin.c                                   |    6 +-
 bfd/elf32-cr16.c                                   |    2 +-
 bfd/elf32-cris.c                                   |    2 +-
 bfd/elf32-d10v.c                                   |    2 +-
 bfd/elf32-dlx.c                                    |    2 +-
 bfd/elf32-fr30.c                                   |    2 +-
 bfd/elf32-frv.c                                    |    2 +-
 bfd/elf32-hppa.c                                   |    2 +-
 bfd/elf32-i370.c                                   |    2 +-
 bfd/elf32-i386.c                                   |    2 +-
 bfd/elf32-iq2000.c                                 |    2 +-
 bfd/elf32-lm32.c                                   |    2 +-
 bfd/elf32-m32c.c                                   |    2 +-
 bfd/elf32-m32r.c                                   |    2 +-
 bfd/elf32-m68hc1x.c                                |    2 +-
 bfd/elf32-m68k.c                                   |    4 +-
 bfd/elf32-mcore.c                                  |    2 +-
 bfd/elf32-metag.c                                  |    2 +-
 bfd/elf32-microblaze.c                             |    2 +-
 bfd/elf32-moxie.c                                  |    2 +-
 bfd/elf32-msp430.c                                 |    2 +-
 bfd/elf32-mt.c                                     |    2 +-
 bfd/elf32-nds32.c                                  |    8 +-
 bfd/elf32-nios2.c                                  |    2 +-
 bfd/elf32-or1k.c                                   |    2 +-
 bfd/elf32-ppc.c                                    |    2 +-
 bfd/elf32-rl78.c                                   |    2 +-
 bfd/elf32-s390.c                                   |    2 +-
 bfd/elf32-score.c                                  |    2 +-
 bfd/elf32-score7.c                                 |    2 +-
 bfd/elf32-sh.c                                     |    2 +-
 bfd/elf32-sparc.c                                  |    1 +
 bfd/elf32-tic6x.c                                  |    2 +-
 bfd/elf32-tilepro.c                                |    4 +-
 bfd/elf32-v850.c                                   |    2 +-
 bfd/elf32-vax.c                                    |    2 +-
 bfd/elf32-xstormy16.c                              |    2 +-
 bfd/elf32-xtensa.c                                 |    2 +-
 bfd/elf64-alpha.c                                  |    2 +-
 bfd/elf64-hppa.c                                   |    2 +-
 bfd/elf64-ia64-vms.c                               |    2 +-
 bfd/elf64-mips.c                                   |   82 +------
 bfd/elf64-mmix.c                                   |    2 +-
 bfd/elf64-ppc.c                                    |    7 +-
 bfd/elf64-s390.c                                   |    2 +-
 bfd/elf64-sh64.c                                   |    2 +-
 bfd/elf64-x86-64.c                                 |    2 +-
 bfd/elflink.c                                      |  111 ++++++----
 bfd/elfnn-aarch64.c                                |    8 +-
 bfd/elfnn-ia64.c                                   |    2 +-
 bfd/elfnn-riscv.c                                  |    4 +-
 bfd/elfxx-mips.c                                   |    2 +-
 bfd/elfxx-sparc.c                                  |   19 ++-
 bfd/elfxx-tilegx.c                                 |    4 +-
 bfd/linker.c                                       |    3 +-
 bfd/mach-o.c                                       |    2 +-
 bfd/peXXigen.c                                     |   18 +-
 bfd/version.h                                      |    2 +-
 bfd/vms-alpha.c                                    |   32 ++--
 bfd/vms-lib.c                                      |   18 +-
 binutils/ChangeLog                                 |   39 +++
 binutils/NEWS                                      |    3 +
 binutils/dwarf.c                                   |    7 +-
 binutils/objcopy.c                                 |    7 -
 binutils/readelf.c                                 |    7 +-
 binutils/strings.c                                 |    4 +-
 .../testsuite/binutils-all/mips/mips-note-2-n32.d  |    7 +
 .../testsuite/binutils-all/mips/mips-note-2-n64.d  |    7 +
 binutils/testsuite/binutils-all/mips/mips-note-2.d |    7 +
 .../testsuite/binutils-all/mips/mips-note-2r-n32.d |   11 +
 .../testsuite/binutils-all/mips/mips-note-2r-n64.d |   15 ++
 .../testsuite/binutils-all/mips/mips-note-2r.d     |   11 +
 binutils/testsuite/binutils-all/mips/mips.exp      |   45 +++--
 binutils/testsuite/lib/utils-lib.exp               |   14 +-
 gas/ChangeLog                                      |   86 +++++++
 gas/config/tc-aarch64.c                            |   10 +-
 gas/config/tc-aarch64.h                            |    5 +-
 gas/config/tc-arm.h                                |   10 +-
 gas/config/tc-avr.c                                |    4 +
 gas/config/tc-avr.h                                |    3 +-
 gas/config/tc-cris.h                               |    5 +-
 gas/config/tc-hppa.c                               |    2 +-
 gas/config/tc-i386.h                               |    5 +-
 gas/config/tc-i960.h                               |    7 +-
 gas/config/tc-ia64.h                               |    5 +-
 gas/config/tc-microblaze.h                         |   11 +-
 gas/config/tc-mips.c                               |    2 +-
 gas/config/tc-mips.h                               |    3 +-
 gas/config/tc-mn10300.h                            |   18 +-
 gas/config/tc-msp430.c                             |    5 +-
 gas/config/tc-msp430.h                             |    9 +-
 gas/config/tc-nds32.h                              |    3 +-
 gas/config/tc-pru.h                                |    2 +-
 gas/config/tc-riscv.h                              |    4 +-
 gas/config/tc-rl78.h                               |    4 +-
 gas/config/tc-s390.h                               |    3 +-
 gas/config/tc-score7.c                             |    2 +-
 gas/config/tc-sh.h                                 |    7 +-
 gas/config/tc-sh64.h                               |    7 +-
 gas/config/tc-sparc.c                              |   76 ++++++-
 gas/config/tc-sparc.h                              |    5 +-
 gas/config/tc-xtensa.h                             |    3 +-
 gas/doc/c-sparc.texi                               |   28 ++-
 gas/testsuite/gas/s390/zarch-z10.d                 |    1 -
 gas/testsuite/gas/s390/zarch-z10.s                 |    1 -
 gas/testsuite/gas/s390/zarch-z196.d                |    1 +
 gas/testsuite/gas/s390/zarch-z196.s                |    1 +
 gas/testsuite/gas/sparc/call-relax.d               |    2 +-
 gas/testsuite/gas/sparc/fpcmpshl-diag.l            |    6 +
 gas/testsuite/gas/sparc/fpcmpshl-diag.s            |    7 +
 gas/testsuite/gas/sparc/fpcmpshl.d                 |   27 +++
 gas/testsuite/gas/sparc/fpcmpshl.s                 |   19 ++
 gas/testsuite/gas/sparc/ldm-stm-diag.l             |    3 +
 gas/testsuite/gas/sparc/ldm-stm-diag.s             |    4 +
 gas/testsuite/gas/sparc/ldm-stm.d                  |   70 ++++++
 gas/testsuite/gas/sparc/ldm-stm.s                  |   63 +++++
 gas/testsuite/gas/sparc/ldmf-stmf-diag.l           |   11 +
 gas/testsuite/gas/sparc/ldmf-stmf-diag.s           |   12 +
 gas/testsuite/gas/sparc/ldmf-stmf.d                |   37 +++
 gas/testsuite/gas/sparc/ldmf-stmf.s                |   31 +++
 gas/testsuite/gas/sparc/on-diag.l                  |    5 +
 gas/testsuite/gas/sparc/on-diag.s                  |    6 +
 gas/testsuite/gas/sparc/on.d                       |   13 +
 gas/testsuite/gas/sparc/on.s                       |    6 +
 gas/testsuite/gas/sparc/rdasr.d                    |    3 +-
 gas/testsuite/gas/sparc/rdasr.s                    |    1 +
 gas/testsuite/gas/sparc/rle.d                      |   12 +
 gas/testsuite/gas/sparc/rle.s                      |    4 +
 gas/testsuite/gas/sparc/sparc.exp                  |   13 +-
 gas/testsuite/gas/sparc/sparc6-diag.l              |    7 +
 gas/testsuite/gas/sparc/sparc6-diag.s              |    8 +
 gas/testsuite/gas/sparc/sparc6.d                   |   18 ++
 gas/testsuite/gas/sparc/sparc6.s                   |   11 +
 gas/write.c                                        |   10 +-
 gdb/ChangeLog                                      |   64 +++++
 gdb/Makefile.in                                    |    2 +-
 gdb/ada-lang.c                                     |    1 +
 gdb/breakpoint.c                                   |   11 +-
 gdb/c-lang.c                                       |   14 ++
 gdb/c-lang.h                                       |    3 +
 gdb/cli/cli-decode.c                               |   29 ++-
 gdb/command.h                                      |    6 +
 gdb/configure                                      |    4 +-
 gdb/configure.ac                                   |    4 +-
 gdb/configure.nat                                  |   11 +-
 gdb/contrib/cc-with-tweaks.sh                      |    9 +-
 gdb/contrib/gdb-add-index.sh                       |   34 +++-
 gdb/d-lang.c                                       |    1 +
 gdb/dwarf2read.c                                   |  246 +++++++++++++-------
 gdb/f-lang.c                                       |    1 +
 gdb/gdb_curses.h                                   |    7 +
 gdb/go-lang.c                                      |    1 +
 gdb/infcmd.c                                       |    5 +-
 gdb/language.c                                     |    4 +
 gdb/language.h                                     |    6 +
 gdb/m2-lang.c                                      |    1 +
 gdb/objc-lang.c                                    |    1 +
 gdb/opencl-lang.c                                  |    1 +
 gdb/p-lang.c                                       |    2 +
 gdb/rust-lang.c                                    |   15 ++
 gdb/sparc-tdep.c                                   |   72 +++++--
 gdb/sparc64-tdep.c                                 |   43 ++++-
 gdb/testsuite/ChangeLog                            |   43 ++++
 gdb/testsuite/gdb.base/fileio.c                    |   66 +++---
 gdb/testsuite/gdb.base/fileio.exp                  |    2 +-
 gdb/testsuite/gdb.base/float.exp                   |   10 +-
 gdb/testsuite/gdb.base/set-inferior-tty.exp        |   10 +-
 gdb/testsuite/gdb.rust/simple.exp                  |    8 +-
 gdb/testsuite/gdb.rust/watch.exp                   |   35 +++
 gdb/testsuite/gdb.rust/watch.rs                    |   24 ++
 gdb/tui/tui-windata.c                              |    2 +-
 gdb/tui/tui-wingeneral.c                           |    2 +-
 gdb/tui/tui-winsource.c                            |    7 +-
 gold/ChangeLog                                     |    6 +
 gold/layout.cc                                     |    5 +
 include/ChangeLog                                  |   36 +++
 include/bfdlink.h                                  |   12 +-
 include/elf/sparc.h                                |    9 +
 include/opcode/sparc.h                             |   25 ++-
 ld/ChangeLog                                       |   80 +++++++
 ld/emulparams/avrxmega3.sh                         |    1 +
 ld/emultempl/elf32.em                              |    2 +-
 ld/emultempl/pe.em                                 |    2 +-
 ld/emultempl/pep.em                                |    2 +-
 ld/emultempl/xtensaelf.em                          |    2 +-
 ld/ld.texinfo                                      |   11 +-
 ld/ldfile.c                                        |    2 +
 ld/ldlang.c                                        |    7 +-
 ld/ldlex.l                                         |    5 +
 ld/plugin.c                                        |   67 +++---
 ld/scripttempl/avr.sc                              |   51 ++++-
 ld/testsuite/ld-gc/gc.exp                          |    1 +
 ld/testsuite/ld-gc/pr20882.d                       |    9 +
 ld/testsuite/ld-gc/pr20882a.s                      |    8 +
 ld/testsuite/ld-gc/pr20882b.s                      |    5 +
 ld/testsuite/ld-gc/pr20882c.s                      |    5 +
 ld/testsuite/ld-i386/i386.exp                      |    2 +
 ld/testsuite/ld-i386/property-x86-4a.d             |   10 +
 ld/testsuite/ld-i386/property-x86-4a.s             |    5 +
 ld/testsuite/ld-i386/property-x86-4b.d             |   10 +
 ld/testsuite/ld-i386/property-x86-4b.s             |   20 ++
 ld/testsuite/ld-scripts/sysroot-prefix.exp         |    9 +-
 ld/testsuite/ld-x86-64/property-x86-4a.d           |   10 +
 ld/testsuite/ld-x86-64/property-x86-4a.s           |    5 +
 ld/testsuite/ld-x86-64/property-x86-4b.d           |   10 +
 ld/testsuite/ld-x86-64/property-x86-4b.s           |   20 ++
 ld/testsuite/ld-x86-64/x86-64.exp                  |   42 ++--
 opcodes/ChangeLog                                  |   44 ++++
 opcodes/aarch64-asm.c                              |    5 +-
 opcodes/aarch64-dis.c                              |    8 +-
 opcodes/aarch64-gen.c                              |    6 +-
 opcodes/aarch64-opc.c                              |    8 +-
 opcodes/s390-opc.txt                               |    2 +-
 opcodes/sparc-dis.c                                |   26 ++-
 opcodes/sparc-opc.c                                |  217 ++++++++++++++++-
 readline/ChangeLog.gdb                             |    5 +
 readline/input.c                                   |    1 +
 227 files changed, 2526 insertions(+), 658 deletions(-)
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2-n32.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2-n64.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r-n32.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r-n64.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips-note-2r.d
 create mode 100644 gas/testsuite/gas/sparc/fpcmpshl-diag.l
 create mode 100644 gas/testsuite/gas/sparc/fpcmpshl-diag.s
 create mode 100644 gas/testsuite/gas/sparc/fpcmpshl.d
 create mode 100644 gas/testsuite/gas/sparc/fpcmpshl.s
 create mode 100644 gas/testsuite/gas/sparc/ldm-stm-diag.l
 create mode 100644 gas/testsuite/gas/sparc/ldm-stm-diag.s
 create mode 100644 gas/testsuite/gas/sparc/ldm-stm.d
 create mode 100644 gas/testsuite/gas/sparc/ldm-stm.s
 create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf-diag.l
 create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf-diag.s
 create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf.d
 create mode 100644 gas/testsuite/gas/sparc/ldmf-stmf.s
 create mode 100644 gas/testsuite/gas/sparc/on-diag.l
 create mode 100644 gas/testsuite/gas/sparc/on-diag.s
 create mode 100644 gas/testsuite/gas/sparc/on.d
 create mode 100644 gas/testsuite/gas/sparc/on.s
 create mode 100644 gas/testsuite/gas/sparc/rle.d
 create mode 100644 gas/testsuite/gas/sparc/rle.s
 create mode 100644 gas/testsuite/gas/sparc/sparc6-diag.l
 create mode 100644 gas/testsuite/gas/sparc/sparc6-diag.s
 create mode 100644 gas/testsuite/gas/sparc/sparc6.d
 create mode 100644 gas/testsuite/gas/sparc/sparc6.s
 create mode 100644 gdb/testsuite/gdb.rust/watch.exp
 create mode 100644 gdb/testsuite/gdb.rust/watch.rs
 create mode 100644 ld/testsuite/ld-gc/pr20882.d
 create mode 100644 ld/testsuite/ld-gc/pr20882a.s
 create mode 100644 ld/testsuite/ld-gc/pr20882b.s
 create mode 100644 ld/testsuite/ld-gc/pr20882c.s
 create mode 100644 ld/testsuite/ld-i386/property-x86-4a.d
 create mode 100644 ld/testsuite/ld-i386/property-x86-4a.s
 create mode 100644 ld/testsuite/ld-i386/property-x86-4b.d
 create mode 100644 ld/testsuite/ld-i386/property-x86-4b.s
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-4a.d
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-4a.s
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-4b.d
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-4b.s

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 52c192d..38462fe 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,130 @@
+2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* elf64-mips.c (mips_elf64_canonicalize_reloc): Remove prototype
+	and function.
+	(mips_elf64_canonicalize_dynamic_reloc): Likewise.
+	(mips_elf64_slurp_one_reloc_table): Set `reloc_count' to the
+	actual number of internal relocations retrieved.  Adjust
+	function description.
+	(bfd_elf64_canonicalize_reloc): Remove macro.
+	(bfd_elf64_canonicalize_dynamic_reloc): Likewise.
+
+2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* archures.c (bfd_mach_sparc_v9m8): Define.
+	(bfd_mach_sparc_v8plusm8): Likewise.
+	(bfd_mach_sparc_v9_p): Adjust to M8.
+	(bfd_mach_sparc_64bit_p): Likewise.
+	* aoutx.h (machine_type): Handle bfd_mach_sparc_v9m8 and
+	bfd_mach_sparc_v8plusm8.
+	* bfd-in2.h: Regenerated.
+	* cpu-sparc.c (arch_info_struct): Entries for sparc:v9m8 and
+	sparc:v8plusm8.
+	* elfxx-sparc.c (_bfd_sparc_elf_object_p): Handle
+	bfd_mach_sparc_v8plusm8 and bfd_mach_sparc_v9m8 using the new hw
+	capabilities ONADDSUB, ONMUL, ONDIV, DICTUNP, FPCPSHL, RLE and
+	SHA3.
+	* elf32-sparc.c (elf32_sparc_final_write_processing): Handle
+	bfd_mach_sparc_v8plusm8.
+
+2017-05-19  Alan Modra  <amodra@gmail.com>
+
+	* elflink.c (_bfd_elf_gc_mark_extra_sections): Don't keep
+	debug and special sections when no non-note alloc sections in an
+	object are kept.
+
+2017-05-18  Alan Modra  <amodra@gmail.com>
+
+	* arc-got.h: Don't compare boolean values against TRUE or FALSE.
+	* elf-m10300.c: Likewise.
+	* elf.c: Likewise.
+	* elf32-arc.c: Likewise.
+	* elf32-bfin.c: Likewise.
+	* elf32-m68k.c: Likewise.
+	* elf32-nds32.c: Likewise.
+	* elf32-tilepro.c: Likewise.
+	* elflink.c: Likewise.
+	* elfnn-aarch64.c: Likewise.
+	* elfnn-riscv.c: Likewise.
+	* elfxx-tilegx.c: Likewise.
+	* mach-o.c: Likewise.
+	* peXXigen.c: Likewise.
+	* vms-alpha.c: Likewise.
+	* vms-lib.c: Likewise.
+
+2017-05-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/20882
+	* elflink.c (elf_gc_mark_debug_section): New function.
+	(_bfd_elf_gc_mark_extra_sections): Mark any debug sections
+	referenced by kept debug sections.
+
+2017-05-16  Alan Modra  <amodra@gmail.com>
+
+	* elf-m10300.c: Rename occurrences of non_ir_ref.
+	* elf32-arm.c: Likewise.
+	* elf32-bfin.c: Likewise.
+	* elf32-cr16.c: Likewise.
+	* elf32-cris.c: Likewise.
+	* elf32-d10v.c: Likewise.
+	* elf32-dlx.c: Likewise.
+	* elf32-fr30.c: Likewise.
+	* elf32-frv.c: Likewise.
+	* elf32-hppa.c: Likewise.
+	* elf32-i370.c: Likewise.
+	* elf32-i386.c: Likewise.
+	* elf32-iq2000.c: Likewise.
+	* elf32-lm32.c: Likewise.
+	* elf32-m32c.c: Likewise.
+	* elf32-m32r.c: Likewise.
+	* elf32-m68hc1x.c: Likewise.
+	* elf32-m68k.c: Likewise.
+	* elf32-mcore.c: Likewise.
+	* elf32-metag.c: Likewise.
+	* elf32-microblaze.c: Likewise.
+	* elf32-moxie.c: Likewise.
+	* elf32-msp430.c: Likewise.
+	* elf32-mt.c: Likewise.
+	* elf32-nios2.c: Likewise.
+	* elf32-or1k.c: Likewise.
+	* elf32-ppc.c: Likewise.
+	* elf32-rl78.c: Likewise.
+	* elf32-s390.c: Likewise.
+	* elf32-score.c: Likewise.
+	* elf32-score7.c: Likewise.
+	* elf32-sh.c: Likewise.
+	* elf32-tic6x.c: Likewise.
+	* elf32-tilepro.c: Likewise.
+	* elf32-v850.c: Likewise.
+	* elf32-vax.c: Likewise.
+	* elf32-xstormy16.c: Likewise.
+	* elf32-xtensa.c: Likewise.
+	* elf64-alpha.c: Likewise.
+	* elf64-hppa.c: Likewise.
+	* elf64-ia64-vms.c: Likewise.
+	* elf64-mmix.c: Likewise.
+	* elf64-ppc.c: Likewise.
+	* elf64-s390.c: Likewise.
+	* elf64-sh64.c: Likewise.
+	* elf64-x86-64.c: Likewise.
+	* elflink.c: Likewise.
+	* elfnn-aarch64.c: Likewise.
+	* elfnn-ia64.c: Likewise.
+	* elfnn-riscv.c: Likewise.
+	* elfxx-mips.c: Likewise.
+	* elfxx-sparc.c: Likewise.
+	* elfxx-tilegx.c: Likewise.
+	* linker.c: Likewise.
+
+2017-05-16  Alan Modra  <amodra@gmail.com>
+
+	* elf64-ppc.c (add_symbol_adjust): Transfer non_ir_ref_dynamic.
+	* elflink.c (elf_link_add_object_symbols): Update to use
+	non_ir_ref_dynamic.
+	(elf_link_input_bfd): Test non_ir_ref_dynamic in addition to
+	non_ir_ref.
+	* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
+
 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
 
 	* elfxx-mips.c (print_mips_ases): Handle MIPS16e2 ASE.
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index 9a5f7ce..3d38fda 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -738,6 +738,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
           || machine == bfd_mach_sparc_v8pluse
           || machine == bfd_mach_sparc_v8plusv
           || machine == bfd_mach_sparc_v8plusm
+          || machine == bfd_mach_sparc_v8plusm8
 	  || machine == bfd_mach_sparc_v9
 	  || machine == bfd_mach_sparc_v9a
 	  || machine == bfd_mach_sparc_v9b
@@ -745,7 +746,8 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
           || machine == bfd_mach_sparc_v9d
           || machine == bfd_mach_sparc_v9e
           || machine == bfd_mach_sparc_v9v
-	  || machine == bfd_mach_sparc_v9m)
+	  || machine == bfd_mach_sparc_v9m
+          || machine == bfd_mach_sparc_v9m8)
 	arch_flags = M_SPARC;
       else if (machine == bfd_mach_sparc_sparclet)
 	arch_flags = M_SPARCLET;
diff --git a/bfd/arc-got.h b/bfd/arc-got.h
index abf3815..b8a6d15 100644
--- a/bfd/arc-got.h
+++ b/bfd/arc-got.h
@@ -318,7 +318,7 @@ relocate_fix_got_relocs_for_got_info (struct got_entry **          list_p,
 	}
 
 
-      if (entry && entry->processed == FALSE)
+      if (entry && !entry->processed)
 	{
 	  switch (entry->type)
 	    {
@@ -427,7 +427,7 @@ create_got_dynrelocs_for_single_entry (struct got_entry *list,
   bfd_vma got_offset = list->offset;
 
   if (list->type == GOT_NORMAL
-      && list->created_dyn_relocation == FALSE)
+      && !list->created_dyn_relocation)
     {
       if (bfd_link_pic (info)
 	  && h != NULL
@@ -446,7 +446,7 @@ create_got_dynrelocs_for_single_entry (struct got_entry *list,
       list->created_dyn_relocation = TRUE;
     }
   else if (list->existing_entries != TLS_GOT_NONE
-	   && list->created_dyn_relocation == FALSE)
+	   && !list->created_dyn_relocation)
     {
        /* TODO TLS: This is not called for local symbols.
 	  In order to correctly implement TLS, this should also
diff --git a/bfd/archures.c b/bfd/archures.c
index c6e7152..2fefec5 100644
--- a/bfd/archures.c
+++ b/bfd/archures.c
@@ -147,9 +147,11 @@ DESCRIPTION
 .#define bfd_mach_sparc_v9v		18 {* with OSA2011 and T4 and IMA and FJMAU add'ns.  *}
 .#define bfd_mach_sparc_v8plusm		19 {* with OSA2015 and M7 add'ns.  *}
 .#define bfd_mach_sparc_v9m		20 {* with OSA2015 and M7 add'ns.  *}
+.#define bfd_mach_sparc_v8plusm8	21 {* with OSA2017 and M8 add'ns.  *}
+.#define bfd_mach_sparc_v9m8		22 {* with OSA2017 and M8 add'ns.  *}
 .{* Nonzero if MACH has the v9 instruction set.  *}
 .#define bfd_mach_sparc_v9_p(mach) \
-.  ((mach) >= bfd_mach_sparc_v8plus && (mach) <= bfd_mach_sparc_v9m \
+.  ((mach) >= bfd_mach_sparc_v8plus && (mach) <= bfd_mach_sparc_v9m8 \
 .   && (mach) != bfd_mach_sparc_sparclite_le)
 .{* Nonzero if MACH is a 64 bit sparc architecture.  *}
 .#define bfd_mach_sparc_64bit_p(mach) \
@@ -159,7 +161,8 @@ DESCRIPTION
 .   && (mach) != bfd_mach_sparc_v8plusd \
 .   && (mach) != bfd_mach_sparc_v8pluse \
 .   && (mach) != bfd_mach_sparc_v8plusv \
-.   && (mach) != bfd_mach_sparc_v8plusm)
+.   && (mach) != bfd_mach_sparc_v8plusm \
+.   && (mach) != bfd_mach_sparc_v8plusm8)
 .  bfd_arch_spu,       {* PowerPC SPU *}
 .#define bfd_mach_spu		256
 .  bfd_arch_mips,      {* MIPS Rxxxx *}
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 8617881..ae2fceb 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -2004,9 +2004,11 @@ enum bfd_architecture
 #define bfd_mach_sparc_v9v             18 /* with OSA2011 and T4 and IMA and FJMAU add'ns.  */
 #define bfd_mach_sparc_v8plusm         19 /* with OSA2015 and M7 add'ns.  */
 #define bfd_mach_sparc_v9m             20 /* with OSA2015 and M7 add'ns.  */
+#define bfd_mach_sparc_v8plusm8        21 /* with OSA2017 and M8 add'ns.  */
+#define bfd_mach_sparc_v9m8            22 /* with OSA2017 and M8 add'ns.  */
 /* Nonzero if MACH has the v9 instruction set.  */
 #define bfd_mach_sparc_v9_p(mach) \
-  ((mach) >= bfd_mach_sparc_v8plus && (mach) <= bfd_mach_sparc_v9m \
+  ((mach) >= bfd_mach_sparc_v8plus && (mach) <= bfd_mach_sparc_v9m8 \
    && (mach) != bfd_mach_sparc_sparclite_le)
 /* Nonzero if MACH is a 64 bit sparc architecture.  */
 #define bfd_mach_sparc_64bit_p(mach) \
@@ -2016,7 +2018,8 @@ enum bfd_architecture
    && (mach) != bfd_mach_sparc_v8plusd \
    && (mach) != bfd_mach_sparc_v8pluse \
    && (mach) != bfd_mach_sparc_v8plusv \
-   && (mach) != bfd_mach_sparc_v8plusm)
+   && (mach) != bfd_mach_sparc_v8plusm \
+   && (mach) != bfd_mach_sparc_v8plusm8)
   bfd_arch_spu,       /* PowerPC SPU */
 #define bfd_mach_spu           256
   bfd_arch_mips,      /* MIPS Rxxxx */
diff --git a/bfd/cpu-sparc.c b/bfd/cpu-sparc.c
index ff843ec..a6f54e2 100644
--- a/bfd/cpu-sparc.c
+++ b/bfd/cpu-sparc.c
@@ -307,6 +307,36 @@ static const bfd_arch_info_type arch_info_struct[] =
     bfd_default_compatible,
     bfd_default_scan,
     bfd_arch_default_fill,
+    &arch_info_struct[19],
+  },
+  {
+    32,	/* bits in a word */
+    32,	/* bits in an address */
+    8,	/* bits in a byte */
+    bfd_arch_sparc,
+    bfd_mach_sparc_v8plusm8,
+    "sparc",
+    "sparc:v8plusm8",
+    3,
+    FALSE,
+    bfd_default_compatible,
+    bfd_default_scan,
+    bfd_arch_default_fill,
+    &arch_info_struct[20],
+  },
+  {
+    64,	/* bits in a word */
+    64,	/* bits in an address */
+    8,	/* bits in a byte */
+    bfd_arch_sparc,
+    bfd_mach_sparc_v9m8,
+    "sparc",
+    "sparc:v9m8",
+    3,
+    FALSE,
+    bfd_default_compatible,
+    bfd_default_scan,
+    bfd_arch_default_fill,
     0,
   }
 };
diff --git a/bfd/elf-m10300.c b/bfd/elf-m10300.c
index f9d8089..e59f083 100644
--- a/bfd/elf-m10300.c
+++ b/bfd/elf-m10300.c
@@ -1094,7 +1094,7 @@ mn10300_elf_check_relocs (bfd *abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       r_type = ELF32_R_TYPE (rel->r_info);
@@ -1520,7 +1520,7 @@ mn10300_elf_final_link_relocate (reloc_howto_type *howto,
 	  /* Do not generate relocs when an R_MN10300_32 has been used
 	     with an R_MN10300_SYM_DIFF to compute a difference of two
 	     symbols.  */
-	  && is_sym_diff_reloc == FALSE
+	  && !is_sym_diff_reloc
 	  /* Also, do not generate a reloc when the symbol associated
 	     with the R_MN10300_32 reloc is absolute - there is no
 	     need for a run time computation in this case.  */
diff --git a/bfd/elf.c b/bfd/elf.c
index a08e0f8..863bd61 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -7358,7 +7358,7 @@ copy_private_bfd_data (bfd *ibfd, bfd *obfd)
       for (section = obfd->sections; section != NULL;
 	   section = section->next)
 	{
-	  if (section->segment_mark == FALSE)
+	  if (!section->segment_mark)
 	    goto rewrite;
 	  else
 	    section->segment_mark = FALSE;
diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
index b00207e..3e99cab 100644
--- a/bfd/elf32-arc.c
+++ b/bfd/elf32-arc.c
@@ -1259,7 +1259,7 @@ arc_do_relocation (bfd_byte * contents,
   struct elf_link_hash_table *htab ATTRIBUTE_UNUSED = elf_hash_table (info);
   bfd_reloc_status_type flag;
 
-  if (reloc_data.should_relocate == FALSE)
+  if (!reloc_data.should_relocate)
     return bfd_reloc_ok;
 
   switch (reloc_data.howto->size)
@@ -1464,9 +1464,9 @@ elf_arc_relocate_section (bfd *		          output_bfd,
       h2 = elf_link_hash_lookup (elf_hash_table (info), "__SDATA_BEGIN__",
 				 FALSE, FALSE, TRUE);
 
-      if (reloc_data.sdata_begin_symbol_vma_set == FALSE
-	    && h2 != NULL && h2->root.type != bfd_link_hash_undefined
-	    && h2->root.u.def.section->output_section != NULL)
+      if (!reloc_data.sdata_begin_symbol_vma_set
+	  && h2 != NULL && h2->root.type != bfd_link_hash_undefined
+	  && h2->root.u.def.section->output_section != NULL)
 	/* TODO: Verify this condition.  */
 	{
 	  reloc_data.sdata_begin_symbol_vma =
@@ -1784,7 +1784,7 @@ elf_arc_relocate_section (bfd *		          output_bfd,
 
 		bfd_elf32_swap_reloca_out (output_bfd, &outrel, loc);
 
-		if (relocate == FALSE)
+		if (!relocate)
 		  continue;
 	      }
 	    break;
@@ -1793,7 +1793,7 @@ elf_arc_relocate_section (bfd *		          output_bfd,
 	}
 
       if (is_reloc_SDA_relative (howto)
-	  && (reloc_data.sdata_begin_symbol_vma_set == FALSE))
+	  && !reloc_data.sdata_begin_symbol_vma_set)
 	{
 	  _bfd_error_handler
 	    ("Error: Linker symbol __SDATA_BEGIN__ not found");
@@ -1907,8 +1907,8 @@ elf_arc_check_relocs (bfd *			 abfd,
       howto = arc_elf_howto (r_type);
 
       if (dynobj == NULL
-	  && (is_reloc_for_GOT (howto) == TRUE
-	      || is_reloc_for_TLS (howto) == TRUE))
+	  && (is_reloc_for_GOT (howto)
+	      || is_reloc_for_TLS (howto)))
 	{
 	  dynobj = elf_hash_table (info)->dynobj = abfd;
 	  if (! _bfd_elf_create_got_section (abfd, info))
@@ -1985,7 +1985,7 @@ elf_arc_check_relocs (bfd *			 abfd,
 	    break;
 	}
 
-      if (is_reloc_for_PLT (howto) == TRUE)
+      if (is_reloc_for_PLT (howto))
 	{
 	  if (h == NULL)
 	    continue;
@@ -1994,8 +1994,8 @@ elf_arc_check_relocs (bfd *			 abfd,
 	}
 
       /* Add info to the symbol got_entry_list.  */
-      if (is_reloc_for_GOT (howto) == TRUE
-	  || is_reloc_for_TLS (howto) == TRUE)
+      if (is_reloc_for_GOT (howto)
+	  || is_reloc_for_TLS (howto))
 	{
 	  arc_fill_got_info_for_reloc (
 		  arc_got_entry_type_for_reloc (howto),
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 23a02c0..1725c22 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -14556,7 +14556,7 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
 
 	      /* PR15323, ref flags aren't set for references in the
 		 same object.  */
-	      h->root.non_ir_ref = 1;
+	      h->root.non_ir_ref_regular = 1;
 	    }
 	}
 
diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c
index ff1bcc6..b3e09bd 100644
--- a/bfd/elf32-bfin.c
+++ b/bfd/elf32-bfin.c
@@ -329,11 +329,11 @@ bfin_bfd_reloc (bfd *abfd,
   /* Here the variable relocation holds the final address of the
      symbol we are relocating against, plus any addend.  */
 
-  if (howto->pc_relative == TRUE)
+  if (howto->pc_relative)
     {
       relocation -= input_section->output_section->vma + input_section->output_offset;
 
-      if (howto->pcrel_offset == TRUE)
+      if (howto->pcrel_offset)
         relocation -= reloc_entry->address;
     }
 
@@ -1191,7 +1191,7 @@ bfin_check_relocs (bfd * abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       switch (ELF32_R_TYPE (rel->r_info))
diff --git a/bfd/elf32-cr16.c b/bfd/elf32-cr16.c
index 92aa0c8..c36388e 100644
--- a/bfd/elf32-cr16.c
+++ b/bfd/elf32-cr16.c
@@ -738,7 +738,7 @@ cr16_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
         }
 
       /* Some relocs require a global offset table.  */
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index d4bbceb..83c4101 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -3178,7 +3178,7 @@ cris_elf_check_relocs (bfd *abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       r_type = ELF32_R_TYPE (rel->r_info);
diff --git a/bfd/elf32-d10v.c b/bfd/elf32-d10v.c
index 6b6fb34..d284d4f 100644
--- a/bfd/elf32-d10v.c
+++ b/bfd/elf32-d10v.c
@@ -294,7 +294,7 @@ elf32_d10v_check_relocs (bfd *abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       switch (ELF32_R_TYPE (rel->r_info))
diff --git a/bfd/elf32-dlx.c b/bfd/elf32-dlx.c
index 965d866..b12d24a 100644
--- a/bfd/elf32-dlx.c
+++ b/bfd/elf32-dlx.c
@@ -454,7 +454,7 @@ elf32_dlx_check_relocs (bfd *abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       switch (ELF32_R_TYPE (rel->r_info))
diff --git a/bfd/elf32-fr30.c b/bfd/elf32-fr30.c
index f668074..94070d8 100644
--- a/bfd/elf32-fr30.c
+++ b/bfd/elf32-fr30.c
@@ -673,7 +673,7 @@ fr30_elf_check_relocs (bfd *abfd,
 
 	  /* PR15323, ref flags aren't set for references in the same
 	     object.  */
-	  h->root.non_ir_ref = 1;
+	  h->root.non_ir_ref_regular = 1;
 	}
 
       switch (ELF32_R_TYPE (rel->r_info))
diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c
index d4b7727..ef609ff 100644


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-24 20:35 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-24 20:35 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  5db809745301b08de81092634d2a4104c243c975 (commit)
       via  59545af072a3781081ced3b72e6a675e3db3631a (commit)
       via  a5a2c6c693bd290b3a5ffe924aa2c2e30b7d221f (commit)
       via  d1765a175ebe2ef7c7a513b364996b1291551e50 (commit)
       via  88c1242dc0a1e1ab582a65ea8bd05eb5f244c59b (commit)
       via  f4985dba0f53b38efcca4eef42cfbfca5ef44ee2 (commit)
       via  ab20fa4ae95212c58e369916de347f3d518530c2 (commit)
       via  f532ab94387d1bc47de619ae08ead522753d89fa (commit)
       via  39503f82427e22ed8e04d986ccdc8562091ec62e (commit)
       via  003ca0fd22863aaf1a9811c8a35a0133a2d27fb1 (commit)
      from  cdc35f2b9e6cfe316be27a637cbcea17faa802a1 (commit)

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

- Log -----------------------------------------------------------------
commit 5db809745301b08de81092634d2a4104c243c975
Merge: d1765a1 59545af
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 22:35:28 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit d1765a175ebe2ef7c7a513b364996b1291551e50
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 22:34:33 2017 +0200

    .

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

Summary of changes:
 binutils/ChangeLog       |    4 ++
 binutils/objdump.c       |    4 +-
 gdb/ChangeLog            |   63 ++++++++++++++++++++++++++++
 gdb/alpha-tdep.c         |    3 -
 gdb/arc-tdep.c           |    2 -
 gdb/arch-utils.c         |   20 +++++++++
 gdb/arch-utils.h         |    2 +
 gdb/avr-tdep.c           |    1 -
 gdb/bfin-tdep.c          |    1 -
 gdb/cris-tdep.c          |   18 --------
 gdb/dwarf2read.c         |   20 ++++-----
 gdb/frv-tdep.c           |    1 -
 gdb/ft32-tdep.c          |    2 -
 gdb/gdbarch.c            |    4 +-
 gdb/gdbarch.sh           |    2 +-
 gdb/h8300-tdep.c         |    4 --
 gdb/hppa-tdep.c          |    2 -
 gdb/iq2000-tdep.c        |    1 -
 gdb/lm32-tdep.c          |    3 -
 gdb/m32c-tdep.c          |    3 -
 gdb/m32r-tdep.c          |    2 -
 gdb/m68hc11-tdep.c       |   11 -----
 gdb/m68k-tdep.c          |    4 --
 gdb/m88k-tdep.c          |    2 -
 gdb/microblaze-tdep.c    |    2 -
 gdb/mn10300-tdep.c       |    2 -
 gdb/moxie-tdep.c         |    2 -
 gdb/msp430-tdep.c        |    3 -
 gdb/mt-tdep.c            |    1 -
 gdb/nds32-tdep.c         |    2 -
 gdb/nios2-tdep.c         |   14 ------
 gdb/rl78-tdep.c          |    3 -
 gdb/rs6000-tdep.c        |   14 ------
 gdb/rx-tdep.c            |    2 -
 gdb/s390-linux-tdep.c    |    2 -
 gdb/score-tdep.c         |   10 -----
 gdb/sh-tdep.c            |    1 -
 gdb/sh64-tdep.c          |    2 -
 gdb/sparc-tdep.c         |    2 -
 gdb/tic6x-tdep.c         |   10 -----
 gdb/tilegx-tdep.c        |    2 -
 gdb/v850-tdep.c          |    2 -
 gdb/vax-tdep.c           |    2 -
 gdb/xstormy16-tdep.c     |    2 -
 gdb/xtensa-tdep.c        |    2 -
 include/ChangeLog        |    9 ++++
 include/dis-asm.h        |   88 ++++------------------------------------
 opcodes/ChangeLog        |   38 +++++++++++++++++
 opcodes/alpha-dis.c      |    2 +-
 opcodes/avr-dis.c        |    2 +-
 opcodes/bfin-dis.c       |    2 +-
 opcodes/cr16-dis.c       |    2 +-
 opcodes/crx-dis.c        |    2 +-
 opcodes/d10v-dis.c       |    2 +-
 opcodes/d30v-dis.c       |    2 +-
 opcodes/disassemble.c    |   43 ++++++++++++-------
 opcodes/disassemble.h    |  102 ++++++++++++++++++++++++++++++++++++++++++++++
 opcodes/dlx-dis.c        |    2 +-
 opcodes/epiphany-dis.c   |    2 +-
 opcodes/fr30-dis.c       |    2 +-
 opcodes/frv-dis.c        |    2 +-
 opcodes/ft32-dis.c       |    2 +-
 opcodes/h8300-dis.c      |    2 +-
 opcodes/h8500-dis.c      |    2 +-
 opcodes/hppa-dis.c       |    2 +-
 opcodes/i370-dis.c       |    2 +-
 opcodes/i386-dis.c       |    2 +-
 opcodes/i860-dis.c       |    2 +-
 opcodes/i960-dis.c       |    2 +-
 opcodes/ip2k-dis.c       |    2 +-
 opcodes/iq2000-dis.c     |    2 +-
 opcodes/lm32-dis.c       |    2 +-
 opcodes/m10200-dis.c     |    2 +-
 opcodes/m10300-dis.c     |    2 +-
 opcodes/m32r-dis.c       |    2 +-
 opcodes/m68hc11-dis.c    |    2 +-
 opcodes/m68k-dis.c       |    2 +-
 opcodes/m88k-dis.c       |    2 +-
 opcodes/mcore-dis.c      |    2 +-
 opcodes/metag-dis.c      |    2 +-
 opcodes/microblaze-dis.c |    2 +-
 opcodes/mmix-dis.c       |    2 +-
 opcodes/moxie-dis.c      |    2 +-
 opcodes/msp430-dis.c     |    2 +-
 opcodes/mt-dis.c         |    2 +-
 opcodes/nds32-dis.c      |    2 +-
 opcodes/nios2-dis.c      |    2 +-
 opcodes/ns32k-dis.c      |    2 +-
 opcodes/or1k-dis.c       |    2 +-
 opcodes/pdp11-dis.c      |    2 +-
 opcodes/pj-dis.c         |    2 +-
 opcodes/ppc-dis.c        |    2 +-
 opcodes/pru-dis.c        |    2 +-
 opcodes/riscv-dis.c      |    2 +-
 opcodes/rl78-dis.c       |    8 +++-
 opcodes/s390-dis.c       |    2 +-
 opcodes/score-dis.c      |    2 +-
 opcodes/sh-dis.c         |    2 +-
 opcodes/sh64-dis.c       |    2 +-
 opcodes/tic30-dis.c      |    2 +-
 opcodes/tic4x-dis.c      |    2 +-
 opcodes/tic54x-dis.c     |    2 +-
 opcodes/tic6x-dis.c      |    2 +-
 opcodes/tic80-dis.c      |    2 +-
 opcodes/tilegx-dis.c     |    2 +-
 opcodes/tilepro-dis.c    |    2 +-
 opcodes/v850-dis.c       |    2 +-
 opcodes/vax-dis.c        |    2 +-
 opcodes/visium-dis.c     |    2 +-
 opcodes/w65-dis.c        |    2 +-
 opcodes/wasm32-dis.c     |    2 +-
 opcodes/xc16x-dis.c      |    2 +-
 opcodes/xgate-dis.c      |    2 +-
 opcodes/xstormy16-dis.c  |    2 +-
 opcodes/xtensa-dis.c     |    2 +-
 opcodes/z80-dis.c        |    2 +-
 opcodes/z8k-dis.c        |    2 +-
 sim/common/ChangeLog     |    4 ++
 sim/common/sim-trace.c   |    6 ++-
 119 files changed, 368 insertions(+), 323 deletions(-)
 create mode 100644 opcodes/disassemble.h

First 500 lines of diff:
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 60a199a..b2f0f11 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,7 @@
+2017-05-24  Yao Qi  <yao.qi@linaro.org>
+
+	* objdump.c (disassemble_data): Caller update.
+
 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* objcopy.c (merge_gnu_build_notes): Remove workaround that
diff --git a/binutils/objdump.c b/binutils/objdump.c
index 5972da1..81d47a0 100644
--- a/binutils/objdump.c
+++ b/binutils/objdump.c
@@ -2386,7 +2386,9 @@ disassemble_data (bfd *abfd)
     }
 
   /* Use libopcodes to locate a suitable disassembler.  */
-  aux.disassemble_fn = disassembler (abfd);
+  aux.disassemble_fn = disassembler (bfd_get_arch (abfd),
+				     bfd_big_endian (abfd),
+				     bfd_get_mach (abfd), abfd);
   if (!aux.disassemble_fn)
     {
       non_fatal (_("can't disassemble for architecture %s\n"),
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c8bd6fd..a96e71f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,66 @@
+2017-05-24  Yao Qi  <yao.qi@linaro.org>
+
+	* rs6000-tdep.c (gdb_print_insn_powerpc): Remove.
+	(rs6000_gdbarch_init): Don't call set_gdbarch_print_insn.
+
+2017-05-24  Yao Qi  <yao.qi@linaro.org>
+
+	* rl78-tdep.c (rl78_gdbarch_init): Don't call
+	set_gdbarch_print_insn.
+
+2017-05-24  Yao Qi  <yao.qi@linaro.org>
+
+	* h8300-tdep.c (h8300_gdbarch_init): Don't call
+	set_gdbarch_print_insn.
+
+2017-05-24  Yao Qi  <yao.qi@linaro.org>
+
+	* alpha-tdep.c (alpha_gdbarch_init): Don't call
+	set_gdbarch_print_insn.
+	* arc-tdep.c (arc_gdbarch_init): Likewise.
+	* arch-utils.c: include dis-asm.h.
+	(default_print_insn): New function.
+	* arch-utils.h (default_print_insn): Declare.
+	* avr-tdep.c (avr_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* bfin-tdep.c (bfin_gdbarch_init): Likewise.
+	* cris-tdep.c (cris_delayed_get_disassembler): Remove.
+	(cris_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* frv-tdep.c (frv_gdbarch_init): Likewise.
+	* ft32-tdep.c (ft32_gdbarch_init): Likewise.
+	* gdbarch.sh (print_insn): Use default_print_insn.
+	* gdbarch.c: Regenerated.
+	* hppa-tdep.c (hppa_gdbarch_init): Likewise.
+	* iq2000-tdep.c (iq2000_gdbarch_init): Likewise.
+	* lm32-tdep.c (lm32_gdbarch_init): Likewise.
+	* m32c-tdep.c (m32c_gdbarch_init): Likewise.
+	* m32r-tdep.c (m32r_gdbarch_init): Likewise.
+	* m68hc11-tdep.c (gdb_print_insn_m68hc11): Remove.
+	(m68hc11_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* m68k-tdep.c (m68k_gdbarch_init): Likewise.
+	* m88k-tdep.c (m88k_gdbarch_init): Likewise.
+	* microblaze-tdep.c (microblaze_gdbarch_init): Likewise.
+	* mn10300-tdep.c (mn10300_gdbarch_init): Likewise.
+	* moxie-tdep.c (moxie_gdbarch_init): Likewise.
+	* msp430-tdep.c (msp430_gdbarch_init): Likewise.
+	* mt-tdep.c (mt_gdbarch_init): Likewise.
+	* nds32-tdep.c (nds32_gdbarch_init): Likewise.
+	* nios2-tdep.c (nios2_print_insn): Remove.
+	(nios2_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* rx-tdep.c (rx_gdbarch_init): Likewise.
+	* s390-linux-tdep.c (s390_gdbarch_init): Likewise.
+	* score-tdep.c (score_print_insn): Remove.
+	(score_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* sh-tdep.c (sh_gdbarch_init): Likewise.
+	* sh64-tdep.c (sh64_gdbarch_init): Likewise.
+	* sparc-tdep.c (sparc32_gdbarch_init): Likewise.
+	* tic6x-tdep.c (tic6x_print_insn): Remove.
+	(tic6x_gdbarch_init): Don't call set_gdbarch_print_insn.
+	* tilegx-tdep.c (tilegx_gdbarch_init): Likewise.
+	* v850-tdep.c (v850_gdbarch_init): Likewise.
+	* vax-tdep.c (vax_gdbarch_init): Likewise.
+	* xstormy16-tdep.c (xstormy16_gdbarch_init): Likewise.
+	* xtensa-tdep.c (xtensa_gdbarch_init): Likewise.
+
 2017-05-23  John Baldwin  <jhb@FreeBSD.org>
 
 	* mips-fbsd-tdep.c (MIPS_PC_REGNUM): Remove.
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index d62566c..b1bc6a1 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -1798,9 +1798,6 @@ alpha_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   /* Prologue heuristics.  */
   set_gdbarch_skip_prologue (gdbarch, alpha_skip_prologue);
 
-  /* Disassembler.  */
-  set_gdbarch_print_insn (gdbarch, print_insn_alpha);
-
   /* Call info.  */
 
   set_gdbarch_return_value (gdbarch, alpha_return_value);
diff --git a/gdb/arc-tdep.c b/gdb/arc-tdep.c
index 4f866a9..d9ee5c6 100644
--- a/gdb/arc-tdep.c
+++ b/gdb/arc-tdep.c
@@ -2013,8 +2013,6 @@ arc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_frame_align (gdbarch, arc_frame_align);
 
-  set_gdbarch_print_insn (gdbarch, arc_delayed_print_insn);
-
   set_gdbarch_cannot_step_breakpoint (gdbarch, 1);
 
   /* "nonsteppable" watchpoint means that watchpoint triggers before
diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c
index b1cec80..c011b0f 100644
--- a/gdb/arch-utils.c
+++ b/gdb/arch-utils.c
@@ -37,6 +37,7 @@
 
 #include "floatformat.h"
 
+#include "dis-asm.h"
 
 struct displaced_step_closure *
 simple_displaced_step_copy_insn (struct gdbarch *gdbarch,
@@ -973,6 +974,25 @@ default_guess_tracepoint_registers (struct gdbarch *gdbarch,
   regcache_raw_supply (regcache, pc_regno, regs);
 }
 
+int
+default_print_insn (bfd_vma memaddr, disassemble_info *info)
+{
+  disassembler_ftype disassemble_fn;
+
+  if (exec_bfd != NULL)
+    {
+      gdb_assert (info->arch == bfd_get_arch (exec_bfd));
+      gdb_assert (info->endian == (bfd_big_endian (exec_bfd)
+				   ? BFD_ENDIAN_BIG : BFD_ENDIAN_LITTLE));
+      gdb_assert (info->mach == bfd_get_mach (exec_bfd));
+    }
+  disassemble_fn = disassembler (info->arch, info->endian == BFD_ENDIAN_BIG,
+				 info->mach, exec_bfd);
+
+  gdb_assert (disassemble_fn != NULL);
+  return (*disassemble_fn) (memaddr, info);
+}
+
 /* -Wmissing-prototypes */
 extern initialize_file_ftype _initialize_gdbarch_utils;
 
diff --git a/gdb/arch-utils.h b/gdb/arch-utils.h
index 967a4b1..040afca 100644
--- a/gdb/arch-utils.h
+++ b/gdb/arch-utils.h
@@ -273,4 +273,6 @@ extern void default_guess_tracepoint_registers (struct gdbarch *gdbarch,
 						struct regcache *regcache,
 						CORE_ADDR addr);
 
+extern int default_print_insn (bfd_vma memaddr, disassemble_info *info);
+
 #endif
diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c
index ec9db1c..3d041c6 100644
--- a/gdb/avr-tdep.c
+++ b/gdb/avr-tdep.c
@@ -1499,7 +1499,6 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_pseudo_register_write (gdbarch, avr_pseudo_register_write);
 
   set_gdbarch_return_value (gdbarch, avr_return_value);
-  set_gdbarch_print_insn (gdbarch, print_insn_avr);
 
   set_gdbarch_push_dummy_call (gdbarch, avr_push_dummy_call);
 
diff --git a/gdb/bfin-tdep.c b/gdb/bfin-tdep.c
index c590a91..bfb5d57 100644
--- a/gdb/bfin-tdep.c
+++ b/gdb/bfin-tdep.c
@@ -838,7 +838,6 @@ bfin_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_frame_args_skip (gdbarch, 8);
   set_gdbarch_unwind_pc (gdbarch, bfin_unwind_pc);
   set_gdbarch_frame_align (gdbarch, bfin_frame_align);
-  set_gdbarch_print_insn (gdbarch, print_insn_bfin);
 
   /* Hook in ABI-specific overrides, if they have been registered.  */
   gdbarch_init_osabi (info, gdbarch);
diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c
index eb39772..e554e24 100644
--- a/gdb/cris-tdep.c
+++ b/gdb/cris-tdep.c
@@ -3785,19 +3785,6 @@ cris_gdb_func (struct gdbarch *gdbarch, enum cris_op_type op_type,
     }
 }
 
-/* This wrapper is to avoid cris_get_assembler being called before 
-   exec_bfd has been set.  */
-
-static int
-cris_delayed_get_disassembler (bfd_vma addr, struct disassemble_info *info)
-{
-  int (*print_insn) (bfd_vma addr, struct disassemble_info *info);
-
-  print_insn = cris_get_disassembler (exec_bfd);
-  gdb_assert (print_insn != NULL);
-  return print_insn (addr, info);
-}
-
 /* Originally from <asm/elf.h>.  */
 typedef unsigned char cris_elf_greg_t[4];
 
@@ -4134,10 +4121,5 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   /* Hook in ABI-specific overrides, if they have been registered.  */
   gdbarch_init_osabi (info, gdbarch);
 
-  /* FIXME: cagney/2003-08-27: It should be possible to select a CRIS
-     disassembler, even when there is no BFD.  Does something like
-     "gdb; target remote; disassmeble *0x123" work?  */
-  set_gdbarch_print_insn (gdbarch, cris_delayed_get_disassembler);
-
   return gdbarch;
 }
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 3c7c529..f16f4bf 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -3386,6 +3386,11 @@ create_addrmap_from_aranges (struct objfile *objfile,
 	  addr += address_size;
 	  if (start == 0 && length == 0)
 	    break;
+	  if (start == 0 && !dwarf2_per_objfile->has_section_at_zero)
+	    {
+	      // Symbol was eliminated due to a COMDAT group.
+	      continue;
+	    }
 	  ULONGEST end (start + length);
 	  start = gdbarch_adjust_dwarf2_addr (gdbarch, start + baseaddr);
 	  end = gdbarch_adjust_dwarf2_addr (gdbarch, end + baseaddr);
@@ -4863,23 +4868,14 @@ dw2_find_pc_sect_compunit_symtab (struct objfile *objfile,
   if (!data)
     return NULL;
 
-  bool warned (false);
   if (warn_if_readin && data->v.quick->compunit_symtab)
-    {
-      warning (_("(Internal error: pc %s in read in CU, but not in symtab.)"),
-	       paddress (get_objfile_arch (objfile), pc));
-      warned = true;
-    }
+    warning (_("(Internal error: pc %s in read in CU, but not in symtab.)"),
+	     paddress (get_objfile_arch (objfile), pc));
 
   result
     = recursively_find_pc_sect_compunit_symtab (dw2_instantiate_symtab (data),
 						pc);
-  if (result == NULL && !warned)
-    complaint (&symfile_complaints,
-	       _("Wrong .debug_aranges for PC %s [in module %s]"),
-	       paddress (get_objfile_arch (objfile), pc),
-	       objfile_name (dwarf2_per_objfile->objfile));
-
+  gdb_assert (result != NULL);
   return result;
 }
 
diff --git a/gdb/frv-tdep.c b/gdb/frv-tdep.c
index 8744733..c0257bd 100644
--- a/gdb/frv-tdep.c
+++ b/gdb/frv-tdep.c
@@ -1582,7 +1582,6 @@ frv_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       break;
     }
 
-  set_gdbarch_print_insn (gdbarch, print_insn_frv);
   if (frv_abi (gdbarch) == FRV_ABI_FDPIC)
     set_gdbarch_convert_from_func_ptr_addr (gdbarch,
 					    frv_convert_from_func_ptr_addr);
diff --git a/gdb/ft32-tdep.c b/gdb/ft32-tdep.c
index 5b28275..966a593 100644
--- a/gdb/ft32-tdep.c
+++ b/gdb/ft32-tdep.c
@@ -637,8 +637,6 @@ ft32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_unwind_pc (gdbarch, ft32_unwind_pc);
 
-  set_gdbarch_print_insn (gdbarch, print_insn_ft32);
-
   /* Hook in ABI-specific overrides, if they have been registered.  */
   gdbarch_init_osabi (info, gdbarch);
 
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 9c827ac..257c39f 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -429,6 +429,7 @@ gdbarch_alloc (const struct gdbarch_info *info,
   gdbarch->stabs_argument_has_addr = default_stabs_argument_has_addr;
   gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr_identity;
   gdbarch->addr_bits_remove = core_addr_identity;
+  gdbarch->print_insn = default_print_insn;
   gdbarch->skip_trampoline_code = generic_skip_trampoline_code;
   gdbarch->skip_solib_resolver = generic_skip_solib_resolver;
   gdbarch->in_solib_return_trampoline = generic_in_solib_return_trampoline;
@@ -621,8 +622,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
   /* Skip verify of addr_bits_remove, invalid_p == 0 */
   /* Skip verify of software_single_step, has predicate.  */
   /* Skip verify of single_step_through_delay, has predicate.  */
-  if (gdbarch->print_insn == 0)
-    log.puts ("\n\tprint_insn");
+  /* Skip verify of print_insn, invalid_p == 0 */
   /* Skip verify of skip_trampoline_code, invalid_p == 0 */
   /* Skip verify of skip_solib_resolver, invalid_p == 0 */
   /* Skip verify of in_solib_return_trampoline, invalid_p == 0 */
diff --git a/gdb/gdbarch.sh b/gdb/gdbarch.sh
index 753819f..7992cbe 100755
--- a/gdb/gdbarch.sh
+++ b/gdb/gdbarch.sh
@@ -643,7 +643,7 @@ F;std::vector<CORE_ADDR>;software_single_step;struct regcache *regcache;regcache
 M;int;single_step_through_delay;struct frame_info *frame;frame
 # FIXME: cagney/2003-08-28: Need to find a better way of selecting the
 # disassembler.  Perhaps objdump can handle it?
-f;int;print_insn;bfd_vma vma, struct disassemble_info *info;vma, info;;0;
+f;int;print_insn;bfd_vma vma, struct disassemble_info *info;vma, info;;default_print_insn;;0
 f;CORE_ADDR;skip_trampoline_code;struct frame_info *frame, CORE_ADDR pc;frame, pc;;generic_skip_trampoline_code;;0
 
 
diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
index 7b260b1..1e8bde1 100644
--- a/gdb/h8300-tdep.c
+++ b/gdb/h8300-tdep.c
@@ -1275,7 +1275,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_ptr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
       set_gdbarch_addr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
       set_gdbarch_return_value (gdbarch, h8300_return_value);
-      set_gdbarch_print_insn (gdbarch, print_insn_h8300);
       break;
     case bfd_mach_h8300h:
     case bfd_mach_h8300hn:
@@ -1296,7 +1295,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 	  set_gdbarch_addr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
 	}
       set_gdbarch_return_value (gdbarch, h8300h_return_value);
-      set_gdbarch_print_insn (gdbarch, print_insn_h8300h);
       break;
     case bfd_mach_h8300s:
     case bfd_mach_h8300sn:
@@ -1317,7 +1315,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 	  set_gdbarch_addr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
 	}
       set_gdbarch_return_value (gdbarch, h8300h_return_value);
-      set_gdbarch_print_insn (gdbarch, print_insn_h8300s);
       break;
     case bfd_mach_h8300sx:
     case bfd_mach_h8300sxn:
@@ -1338,7 +1335,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 	  set_gdbarch_addr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
 	}
       set_gdbarch_return_value (gdbarch, h8300h_return_value);
-      set_gdbarch_print_insn (gdbarch, print_insn_h8300s);
       break;
     }
 
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
index 2636a27..229b061 100644
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -3122,8 +3122,6 @@ hppa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   /* Helper for function argument information.  */
   set_gdbarch_fetch_pointer_argument (gdbarch, hppa_fetch_pointer_argument);
 
-  set_gdbarch_print_insn (gdbarch, print_insn_hppa);
-
   /* When a hardware watchpoint triggers, we'll move the inferior past
      it by removing all eventpoints; stepping past the instruction
      that caused the trigger; reinserting eventpoints; and checking
diff --git a/gdb/iq2000-tdep.c b/gdb/iq2000-tdep.c
index 7d8ed3c..99824b7 100644
--- a/gdb/iq2000-tdep.c
+++ b/gdb/iq2000-tdep.c
@@ -838,7 +838,6 @@ iq2000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_frame_args_skip      (gdbarch, 0);
   set_gdbarch_skip_prologue        (gdbarch, iq2000_skip_prologue);
   set_gdbarch_inner_than           (gdbarch, core_addr_lessthan);
-  set_gdbarch_print_insn           (gdbarch, print_insn_iq2000);
   set_gdbarch_register_type (gdbarch, iq2000_register_type);
   set_gdbarch_frame_align (gdbarch, iq2000_frame_align);
   set_gdbarch_unwind_sp (gdbarch, iq2000_unwind_sp);
diff --git a/gdb/lm32-tdep.c b/gdb/lm32-tdep.c
index bd3e182..84ece3e 100644
--- a/gdb/lm32-tdep.c
+++ b/gdb/lm32-tdep.c
@@ -565,9 +565,6 @@ lm32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_push_dummy_call (gdbarch, lm32_push_dummy_call);
   set_gdbarch_return_value (gdbarch, lm32_return_value);
 
-  /* Instruction disassembler.  */
-  set_gdbarch_print_insn (gdbarch, print_insn_lm32);
-
   lm32_add_reggroups (gdbarch);
   set_gdbarch_register_reggroup_p (gdbarch, lm32_register_reggroup_p);
 
diff --git a/gdb/m32c-tdep.c b/gdb/m32c-tdep.c
index 7376372..1bc5950 100644
--- a/gdb/m32c-tdep.c
+++ b/gdb/m32c-tdep.c
@@ -2639,9 +2639,6 @@ m32c_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   /* Register set.  */
   make_regs (gdbarch);
 
-  /* Disassembly.  */
-  set_gdbarch_print_insn (gdbarch, print_insn_m32c);
-
   /* Breakpoints.  */
   set_gdbarch_breakpoint_kind_from_pc (gdbarch, m32c_breakpoint::kind_from_pc);
   set_gdbarch_sw_breakpoint_from_kind (gdbarch, m32c_breakpoint::bp_from_kind);
diff --git a/gdb/m32r-tdep.c b/gdb/m32r-tdep.c
index 0820af9..2d14ced 100644
--- a/gdb/m32r-tdep.c
+++ b/gdb/m32r-tdep.c
@@ -947,8 +947,6 @@ m32r_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   /* Return the unwound PC value.  */
   set_gdbarch_unwind_pc (gdbarch, m32r_unwind_pc);
 
-  set_gdbarch_print_insn (gdbarch, print_insn_m32r);
-
   /* Hook in ABI-specific overrides, if they have been registered.  */
   gdbarch_init_osabi (info, gdbarch);
 
diff --git a/gdb/m68hc11-tdep.c b/gdb/m68hc11-tdep.c
index 893d9c2..b19ddf7 100644
--- a/gdb/m68hc11-tdep.c
+++ b/gdb/m68hc11-tdep.c
@@ -1344,16 +1344,6 @@ m68hc11_elf_make_msymbol_special (asymbol *sym, struct minimal_symbol *msym)
   if (flags & STO_M68HC12_INTERRUPT)
     MSYMBOL_SET_RTI (msym);
 }
-
-static int
-gdb_print_insn_m68hc11 (bfd_vma memaddr, disassemble_info *info)
-{
-  if (info->arch == bfd_arch_m68hc11)
-    return print_insn_m68hc11 (memaddr, info);
-  else
-    return print_insn_m68hc12 (memaddr, info);
-}
-
 \f
 
 /* 68HC11/68HC12 register groups.
@@ -1525,7 +1515,6 @@ m68hc11_gdbarch_init (struct gdbarch_info info,
 				       m68hc11_breakpoint::kind_from_pc);
   set_gdbarch_sw_breakpoint_from_kind (gdbarch,
 				       m68hc11_breakpoint::bp_from_kind);
-  set_gdbarch_print_insn (gdbarch, gdb_print_insn_m68hc11);
 
   m68hc11_add_reggroups (gdbarch);
   set_gdbarch_register_reggroup_p (gdbarch, m68hc11_register_reggroup_p);
diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c
index 7c3bf4c..5b4736d 100644
--- a/gdb/m68k-tdep.c
+++ b/gdb/m68k-tdep.c
@@ -1240,10 +1240,6 @@ m68k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_return_in_first_hidden_param_p (gdbarch,
 					      m68k_return_in_first_hidden_param_p);
 
-
-  /* Disassembler.  */
-  set_gdbarch_print_insn (gdbarch, print_insn_m68k);
-
 #if defined JB_PC && defined JB_ELEMENT_SIZE
   tdep->jb_pc = JB_PC;
   tdep->jb_elt_size = JB_ELEMENT_SIZE;
diff --git a/gdb/m88k-tdep.c b/gdb/m88k-tdep.c
index 57fe644..d08a913 100644
--- a/gdb/m88k-tdep.c
+++ b/gdb/m88k-tdep.c
@@ -838,8 +838,6 @@ m88k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_iterate_over_regset_sections
     (gdbarch, m88k_iterate_over_regset_sections);
 
-  set_gdbarch_print_insn (gdbarch, print_insn_m88k);
-
   set_gdbarch_skip_prologue (gdbarch, m88k_skip_prologue);
 
   /* Stack grows downward.  */
diff --git a/gdb/microblaze-tdep.c b/gdb/microblaze-tdep.c
index 59f94c5..86cb090 100644
--- a/gdb/microblaze-tdep.c
+++ b/gdb/microblaze-tdep.c
@@ -738,8 +738,6 @@ microblaze_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-24  7:55 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-24  7:55 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  115acb62c076b103ba79e71e10a78146996733e9 (commit)
       via  044f278be92054f43f2012f47849e79d8528bcbd (commit)
      from  04e52a9919f508fbcf6bbffcc5339dc9da7bbbc7 (commit)

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

- Log -----------------------------------------------------------------
commit 115acb62c076b103ba79e71e10a78146996733e9
Merge: 04e52a9 044f278
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 09:55:24 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

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

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

First 500 lines of diff:
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index cd8c015..a3feb6b 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -7775,7 +7775,7 @@ display_debug_names (struct dwarf_section *section, void *file)
       uint32_t hash_prev;
       size_t hash_clash_count = 0;
       size_t longest_clash = 0;
-      size_t this_length;
+      size_t this_length = 0;
       size_t hashi;
       for (hashi = 0; hashi < name_count; hashi++)
 	{


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-24  7:39 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-24  7:39 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  04e52a9919f508fbcf6bbffcc5339dc9da7bbbc7 (commit)
       via  49732834154631c8a0d30cd3c0cf1d5809fae98d (commit)
      from  a3b24e5c2984c2e53d6a6b4b64c2a4e570ce4dca (commit)

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

- Log -----------------------------------------------------------------
commit 04e52a9919f508fbcf6bbffcc5339dc9da7bbbc7
Merge: a3b24e5 4973283
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 09:38:04 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

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

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

First 500 lines of diff:
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index 7d4a810..cd8c015 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -7704,8 +7704,9 @@ display_debug_names (struct dwarf_section *section, void *file)
 	  printf (" %02x", uc);
 	}
       putchar ('\n');
+      putchar ('\n');
 
-      printf (_("\nCU table:\n"));
+      printf (_("CU table:\n"));
       for (i = 0; i < comp_unit_count; i++)
 	{
 	  uint64_t cu_offset;
@@ -7713,8 +7714,9 @@ display_debug_names (struct dwarf_section *section, void *file)
 	  SAFE_BYTE_GET_AND_INC (cu_offset, hdrptr, offset_size, unit_end);
 	  printf (_("[%3u] 0x%lx\n"), i, (unsigned long) cu_offset);
 	}
+      putchar ('\n');
 
-      printf (_("\nTU table:\n"));
+      printf (_("TU table:\n"));
       for (i = 0; i < local_type_unit_count; i++)
 	{
 	  uint64_t tu_offset;
@@ -7722,8 +7724,9 @@ display_debug_names (struct dwarf_section *section, void *file)
 	  SAFE_BYTE_GET_AND_INC (tu_offset, hdrptr, offset_size, unit_end);
 	  printf (_("[%3u] 0x%lx\n"), i, (unsigned long) tu_offset);
 	}
+      putchar ('\n');
 
-      printf (_("\nForeign TU table:\n"));
+      printf (_("Foreign TU table:\n"));
       for (i = 0; i < foreign_type_unit_count; i++)
 	{
 	  uint64_t signature;
@@ -7733,6 +7736,7 @@ display_debug_names (struct dwarf_section *section, void *file)
 	  print_dwarf_vma (signature, 8);
 	  putchar ('\n');
 	}
+      putchar ('\n');
 
       const uint32_t *const hash_table_buckets = (uint32_t *) hdrptr;
       hdrptr += bucket_count * sizeof (uint32_t);
@@ -7765,11 +7769,11 @@ display_debug_names (struct dwarf_section *section, void *file)
 	  if (bucket != 0)
 	    ++buckets_filled;
 	}
-      printf (_("Filled %zu of %lu buckets.\n"), buckets_filled,
+      printf (_("Used %zu of %lu buckets.\n"), buckets_filled,
 	      (unsigned long) bucket_count);
 
       uint32_t hash_prev;
-      size_t clash_count = 0;
+      size_t hash_clash_count = 0;
       size_t longest_clash = 0;
       size_t this_length;
       size_t hashi;
@@ -7777,19 +7781,23 @@ display_debug_names (struct dwarf_section *section, void *file)
 	{
 	  const uint32_t hash_this = hash_table_hashes[hashi];
 
-	  if (hashi > 0 && hash_prev == hash_this)
+	  if (hashi > 0)
 	    {
-	      ++clash_count;
-	      ++this_length;
-	      longest_clash = MAX (longest_clash, this_length);
+	      if (hash_prev % bucket_count == hash_this % bucket_count)
+		{
+		  ++hash_clash_count;
+		  ++this_length;
+		  longest_clash = MAX (longest_clash, this_length);
+		}
+	      else
+		this_length = 0;
 	    }
-	  else
-	    this_length = 0;
 	  hash_prev = hash_this;
 	}
-      printf (_("Out of %lu names there are %zu clashes "
-		"(longest of %zu entries).\n"),
-	      (unsigned long) name_count, clash_count, longest_clash);
+      printf (_("Out of %lu items there are %zu bucket clashes"
+		" (longest of %zu entries).\n"),
+	      (unsigned long) name_count, hash_clash_count, longest_clash);
+      assert (name_count == buckets_filled + hash_clash_count);
 
       struct abbrev_lookup_entry
       {


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-24  7:21 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-24  7:21 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  a3b24e5c2984c2e53d6a6b4b64c2a4e570ce4dca (commit)
       via  d0ddba867e31c2bfc2e46f08ae696df1f0247590 (commit)
       via  480030250901adfbd6e8080e87143fc9959f372e (commit)
       via  6046809b6ba750d75d396a9237935cf6caeb5818 (commit)
       via  60fd657792228e3eb59e87c26fcdeccbfe94d224 (commit)
       via  f7241d4f27cd59357a75bf802e9ffa7d95036deb (commit)
       via  d489d81d0934c4fda8c8aa68fbec1b1315cf8df0 (commit)
       via  6e92fed5946111a76064feb8a2a184d224deae1a (commit)
       via  590b87ffa386ea403e2cb61525c6aafef77097a2 (commit)
       via  6e3f3473e2136e77d6346d5bca894c38e5389116 (commit)
       via  8e7f04f17c60069143078dafd3d3eb8cd15f10fb (commit)
       via  575dcd27f8be6ecd3f89539a8210a8d3f0a271b1 (commit)
       via  b32599a0aa22948b5507ff016bdd98a627991059 (commit)
       via  903b2a564d78b8e47f2460a2a452f442e6e5e979 (commit)
       via  176efed15cabb932a7e9fb2c5e6ef0753e8351a0 (commit)
       via  04ef582ace91cad765d056cc95624478e0421144 (commit)
       via  25f94347373b1b6f4bfc79eeb38e79d383195779 (commit)
       via  9a6465c207ed4e34be92741316d78fc00f0836e4 (commit)
       via  3c0367d0e2df21717b7345a1ccadef39183457ab (commit)
       via  e11b3cdc565c5e86e43ef79d25fc5e8b88162ec1 (commit)
       via  0f068fb5e5b65038c3ded3cfd2a4b8805196956c (commit)
       via  ca49a96781f723d43ec49471cbbb50aa511d063e (commit)
       via  e6cf65f283b8be44014fad0ad0aebfbcc71fceac (commit)
      from  3bd2320fbad278743efe491edb301caa5abd37e7 (commit)

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

- Log -----------------------------------------------------------------
commit a3b24e5c2984c2e53d6a6b4b64c2a4e570ce4dca
Merge: 6046809 d0ddba8
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 09:19:00 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 6046809b6ba750d75d396a9237935cf6caeb5818
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Wed May 24 09:18:07 2017 +0200

    .

commit b32599a0aa22948b5507ff016bdd98a627991059
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Tue May 23 09:47:38 2017 +0200

    .

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

Summary of changes:
 bfd/ChangeLog                                     |   10 +
 bfd/elf32-arc.c                                   |    4 +
 bfd/elf64-x86-64.c                                |    3 +-
 bfd/version.h                                     |    2 +-
 gas/ChangeLog                                     |   48 +
 gas/config/tc-aarch64.c                           |   30 +-
 gas/config/tc-aarch64.h                           |    3 +
 gas/config/tc-arc.c                               |   21 +-
 gas/config/tc-i386.c                              |   75 +-
 gas/configure                                     |    2 +-
 gas/configure.ac                                  |    2 +-
 gas/configure.tgt                                 |    9 +-
 gas/testsuite/gas/i386/i386.exp                   |    6 +
 gas/testsuite/gas/i386/notrack-intel.d            |   29 +
 gas/testsuite/gas/i386/notrack.d                  |   28 +
 gas/testsuite/gas/i386/notrack.s                  |   35 +
 gas/testsuite/gas/i386/notrackbad.l               |   53 +
 gas/testsuite/gas/i386/notrackbad.s               |   22 +
 gas/testsuite/gas/i386/x86-64-notrack-intel.d     |   30 +
 gas/testsuite/gas/i386/x86-64-notrack.d           |   29 +
 gas/testsuite/gas/i386/x86-64-notrack.s           |   40 +
 gas/testsuite/gas/i386/x86-64-notrackbad.l        |   53 +
 gas/testsuite/gas/i386/x86-64-notrackbad.s        |   22 +
 gdb/ChangeLog                                     |   47 +
 gdb/MAINTAINERS                                   |    1 +
 gdb/doc/ChangeLog                                 |    4 +
 gdb/doc/gdb.texinfo                               |   13 +
 gdb/mips-fbsd-nat.c                               |   24 +-
 gdb/mips-fbsd-tdep.c                              |   29 +-
 gdb/ppc-linux-nat.c                               |    4 +-
 gdb/ppc-sysv-tdep.c                               |   34 +-
 gdb/ppc-tdep.h                                    |    3 +
 gdb/rs6000-aix-tdep.c                             |    6 +-
 gdb/rs6000-lynx178-tdep.c                         |    6 +-
 gdb/rs6000-nat.c                                  |    4 +-
 gdb/rs6000-tdep.c                                 |    4 +-
 gdb/rust-lang.c                                   |    5 +-
 gdb/testsuite/ChangeLog                           |    6 +
 gdb/testsuite/gdb.dwarf2/gdb-index.exp            |    7 +-
 gdb/testsuite/gdb.mi/dw2-ref-missing-frame-func.c |   20 +
 gdb/testsuite/gdb.rust/unsized.exp                |   35 +
 gdb/testsuite/gdb.rust/unsized.rs                 |   33 +
 gold/ChangeLog                                    |   21 +
 gold/options.h                                    |    4 +
 gold/powerpc.cc                                   |  192 +-
 include/ChangeLog                                 |    8 +
 include/opcode/arc.h                              |    2 +-
 include/opcode/i386.h                             |    1 +
 ld/ChangeLog                                      |    6 +
 ld/configure.tgt                                  |    8 +
 opcodes/ChangeLog                                 |   16 +
 opcodes/i386-dis.c                                |   44 +-
 opcodes/i386-gen.c                                |    1 +
 opcodes/i386-opc.h                                |    3 +
 opcodes/i386-opc.tbl                              |   15 +-
 opcodes/i386-tbl.h                                |21299 +++++++++++----------
 56 files changed, 11685 insertions(+), 10776 deletions(-)
 create mode 100644 gas/testsuite/gas/i386/notrack-intel.d
 create mode 100644 gas/testsuite/gas/i386/notrack.d
 create mode 100644 gas/testsuite/gas/i386/notrack.s
 create mode 100644 gas/testsuite/gas/i386/notrackbad.l
 create mode 100644 gas/testsuite/gas/i386/notrackbad.s
 create mode 100644 gas/testsuite/gas/i386/x86-64-notrack-intel.d
 create mode 100644 gas/testsuite/gas/i386/x86-64-notrack.d
 create mode 100644 gas/testsuite/gas/i386/x86-64-notrack.s
 create mode 100644 gas/testsuite/gas/i386/x86-64-notrackbad.l
 create mode 100644 gas/testsuite/gas/i386/x86-64-notrackbad.s
 create mode 100644 gdb/testsuite/gdb.rust/unsized.exp
 create mode 100644 gdb/testsuite/gdb.rust/unsized.rs

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 38462fe..4d15e1a 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,13 @@
+2017-05-23  Dilian Palauzov  <git-dpa@aegee.org>
+
+	* elf32-arc.c (arc_elf_merge_attributes): Add fall through
+	comments.
+
+2017-05-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Use
+	dynobj instead of htab->elf.dynobj.
+
 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
 
 	* elf64-mips.c (mips_elf64_canonicalize_reloc): Remove prototype
diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
index 3e99cab..ef0d893 100644
--- a/bfd/elf32-arc.c
+++ b/bfd/elf32-arc.c
@@ -728,9 +728,11 @@ arc_elf_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
 
 	case Tag_ARC_ABI_pic:
 	  tagname = "PIC";
+	  /* fall through */
 	case Tag_ARC_ABI_sda:
 	  if (!tagname)
 	    tagname = "SDA";
+	  /* fall through */
 	case Tag_ARC_ABI_tls:
 	  {
 	    const char *tagval[] = { "Absent", "MWDT", "GNU" };
@@ -756,9 +758,11 @@ arc_elf_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
 
 	case Tag_ARC_ABI_double_size:
 	  tagname = "Double size";
+	  /* fall through */
 	case Tag_ARC_ABI_enumsize:
 	  if (!tagname)
 	    tagname = "Enum size";
+	  /* fall through */
 	case Tag_ARC_ABI_exceptions:
 	  if (!tagname)
 	    tagname = "ABI exceptions";
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 00cf70a..7beb78e 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -7245,8 +7245,7 @@ error_alignment:
 	  /* MPX PLT is supported only for non-NaCl target in 64-bit
 	     mode and is needed only for lazy binding.  */
 	  if (lazy_plt
-	      && info->bndplt
-	      && ABI_64_P (htab->elf.dynobj))
+	      && info->bndplt && ABI_64_P (dynobj))
 	    {
 	      /* Create the second PLT for Intel MPX support.  */
 	      sec = bfd_make_section_anyway_with_flags (dynobj,
diff --git a/bfd/version.h b/bfd/version.h
index 10ba349..e8c13d4 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20170521
+#define BFD_VERSION_DATE 20170524
 #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/gas/ChangeLog b/gas/ChangeLog
index 8fff0e4..2e7bb8d 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,51 @@
+2017-05-23  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* gas/testsuite/gas/i386/notrackbad.l: Updated for non-ELF
+	targets.
+	* gas/testsuite/gas/i386/x86-64-notrackbad.l: Likewise.
+
+2017-05-23  Claudiu Zissulescu <claziss@synopsys.com>
+
+	* config/tc-arc.c (md_apply_fix): Use as_bad_where.
+	(assemble_insn): Use as_bad.
+
+2017-05-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* config/tc-i386.c (REX_PREFIX): Changed to 7.
+	(NOTRACK_PREFIX): New.
+	(MAX_PREFIXES): Changed to 8.
+	(_i386_insn): Add notrack_prefix.
+	(PREFIX_GROUP): Add PREFIX_DS.
+	(add_prefix): Return PREFIX_DS for DS_PREFIX_OPCODE.
+	(md_assemble): Check if NOTRACK prefix is supported.
+	(parse_insn): Set notrack_prefix and issue an error for
+	other prefixes after NOTRACK prefix.
+	* testsuite/gas/i386/i386.exp: Run tests for NOTRACK prefix.
+	* testsuite/gas/i386/notrack-intel.d: New file.
+	* testsuite/gas/i386/notrack.d: Likewise.
+	* testsuite/gas/i386/notrack.s: Likewise.
+	* testsuite/gas/i386/notrackbad.l: Likewise.
+	* testsuite/gas/i386/notrackbad.s: Likewise.
+	* testsuite/gas/i386/x86-64-notrack-intel.d: Likewise.
+	* testsuite/gas/i386/x86-64-notrack.d: Likewise.
+	* testsuite/gas/i386/x86-64-notrack.s: Likewise.
+	* testsuite/gas/i386/x86-64-notrackbad.l: Likewise.
+	* testsuite/gas/i386/x86-64-notrackbad.s: Likewise.
+
+2017-05-22  Jiong Wang <jiong.wang@arm.com>
+
+	* configure.tgt: Set "arch" to "aarch64" if ${cpu} equals "aarch64".
+	Recognize the new triplet name aarch64*-linux-gnu_ilp32.
+	* configure.ac: Output DEFAULT_ARCH macro for AArch64.
+	* configure: Regenerate.
+	* config/tc-aarch64.h (aarch64_after_parse_args): New declaration.
+	(md_after_parse_args): New define.
+	* config/tc-aarch64.c (aarch64_abi_type): New enumeration
+	AARCH64_ABI_NONE.
+	(DEFAULT_ARCH): New define.
+	(aarch64_abi): Set default value to AARCH64_ABI_NONE.
+	(aarch64_after_parse_args): New function.
+
 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* config/tc-sparc.c (sparc_arch_table): Entries for `sparc6',
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 72b98fd..cdb2903 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -62,12 +62,20 @@ static symbolS *GOT_symbol;
 /* Which ABI to use.  */
 enum aarch64_abi_type
 {
-  AARCH64_ABI_LP64 = 0,
-  AARCH64_ABI_ILP32 = 1
+  AARCH64_ABI_NONE = 0,
+  AARCH64_ABI_LP64 = 1,
+  AARCH64_ABI_ILP32 = 2
 };
 
+#ifndef DEFAULT_ARCH
+#define DEFAULT_ARCH "aarch64"
+#endif
+
+/* DEFAULT_ARCH is initialized in gas/configure.tgt.  */
+static const char *default_arch = DEFAULT_ARCH;
+
 /* AArch64 ABI for the output file.  */
-static enum aarch64_abi_type aarch64_abi = AARCH64_ABI_LP64;
+static enum aarch64_abi_type aarch64_abi = AARCH64_ABI_NONE;
 
 /* When non-zero, program to a 32-bit model, in which the C data types
    int, long and all pointer types are 32-bit objects (ILP32); or to a
@@ -7975,6 +7983,22 @@ aarch64_force_relocation (struct fix *fixp)
 
 #ifdef OBJ_ELF
 
+/* Implement md_after_parse_args.  This is the earliest time we need to decide
+   ABI.  If no -mabi specified, the ABI will be decided by target triplet.  */
+
+void
+aarch64_after_parse_args (void)
+{
+  if (aarch64_abi != AARCH64_ABI_NONE)
+    return;
+
+  /* DEFAULT_ARCH will have ":32" extension if it's configured for ILP32.  */
+  if (strlen (default_arch) > 7 && strcmp (default_arch + 7, ":32") == 0)
+    aarch64_abi = AARCH64_ABI_ILP32;
+  else
+    aarch64_abi = AARCH64_ABI_LP64;
+}
+
 const char *
 elf64_aarch64_target_format (void)
 {
diff --git a/gas/config/tc-aarch64.h b/gas/config/tc-aarch64.h
index 5bf1399..4aa3494 100644
--- a/gas/config/tc-aarch64.h
+++ b/gas/config/tc-aarch64.h
@@ -192,6 +192,9 @@ struct aarch64_segment_info_type
 #define tc_regname_to_dw2regnum            tc_aarch64_regname_to_dw2regnum
 #define tc_cfi_frame_initial_instructions  tc_aarch64_frame_initial_instructions
 
+extern void aarch64_after_parse_args (void);
+#define md_after_parse_args() aarch64_after_parse_args ()
+
 #else /* Not OBJ_ELF.  */
 #define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_"
 #endif
diff --git a/gas/config/tc-arc.c b/gas/config/tc-arc.c
index a092892..173a1a0 100644
--- a/gas/config/tc-arc.c
+++ b/gas/config/tc-arc.c
@@ -2966,8 +2966,10 @@ md_apply_fix (fixS *fixP,
 	  break;
 	default:
 	  if ((int) fixP->fx_r_type < 0)
-	    as_fatal (_("PC relative relocation not allowed for (internal) type %d"),
-		      fixP->fx_r_type);
+	    as_bad_where (fixP->fx_file, fixP->fx_line,
+			  _("PC relative relocation not allowed for (internal)"
+			    " type %d"),
+			  fixP->fx_r_type);
 	  break;
 	}
     }
@@ -3942,9 +3944,8 @@ assemble_insn (const struct arc_opcode *opcode,
 	    {
 	    case O_plt:
 	      if (opcode->insn_class == JUMP)
-		as_bad_where (frag_now->fr_file, frag_now->fr_line,
-			      _("Unable to use @plt relocation for insn %s"),
-			      opcode->name);
+		as_bad (_("Unable to use @plt relocation for insn %s"),
+			opcode->name);
 	      needGOTSymbol = TRUE;
 	      reloc = find_reloc ("plt", opcode->name,
 				  pflags, nflg,
@@ -3962,9 +3963,8 @@ assemble_insn (const struct arc_opcode *opcode,
 		  reloc = ARC_RELOC_TABLE (t->X_md)->reloc;
 		  if (arc_opcode_len (opcode) == 2
 		      || opcode->insn_class == JUMP)
-		    as_bad_where (frag_now->fr_file, frag_now->fr_line,
-				  _("Unable to use @pcl relocation for insn %s"),
-				  opcode->name);
+		    as_bad (_("Unable to use @pcl relocation for insn %s"),
+			    opcode->name);
 		}
 	      else
 		{
@@ -4130,8 +4130,9 @@ assemble_insn (const struct arc_opcode *opcode,
   /* Check if the current instruction is legally used.  */
   if (arc_last_insns[1].has_delay_slot
       && is_br_jmp_insn_p (arc_last_insns[0].opcode))
-    as_bad_where (frag_now->fr_file, frag_now->fr_line,
-		  _("A jump/branch instruction in delay slot."));
+    as_bad (_("Insn %s has a jump/branch instruction %s in its delay slot."),
+	    arc_last_insns[1].opcode->name,
+	    arc_last_insns[0].opcode->name);
 }
 
 void
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 6250793..6c1091e 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -66,8 +66,11 @@
 #define HLE_PREFIX	REP_PREFIX
 #define BND_PREFIX	REP_PREFIX
 #define LOCK_PREFIX	5
-#define REX_PREFIX	6       /* must come last.  */
-#define MAX_PREFIXES	7	/* max prefixes per opcode */
+/* Only one of NOTRACK_PREFIX and SEG_PREFIX can be used at the same
+   time.  */
+#define NOTRACK_PREFIX	6
+#define REX_PREFIX	7       /* must come last.  */
+#define MAX_PREFIXES	8	/* max prefixes per opcode */
 
 /* we define the syntax here (modulo base,index,scale syntax) */
 #define REGISTER_PREFIX '%'
@@ -388,6 +391,9 @@ struct _i386_insn
     /* Have BND prefix.  */
     const char *bnd_prefix;
 
+    /* Have NOTRACK prefix.  */
+    const char *notrack_prefix;
+
     /* Error message.  */
     enum i386_error error;
   };
@@ -2144,6 +2150,7 @@ enum PREFIX_GROUP
   PREFIX_EXIST = 0,
   PREFIX_LOCK,
   PREFIX_REP,
+  PREFIX_DS,
   PREFIX_OTHER
 };
 
@@ -2152,7 +2159,8 @@ enum PREFIX_GROUP
    same class already exists.
    b. PREFIX_LOCK if lock prefix is added.
    c. PREFIX_REP if rep/repne prefix is added.
-   d. PREFIX_OTHER if other prefix is added.
+   d. PREFIX_DS if ds prefix is added.
+   e. PREFIX_OTHER if other prefix is added.
  */
 
 static enum PREFIX_GROUP
@@ -2177,8 +2185,10 @@ add_prefix (unsigned int prefix)
 	default:
 	  abort ();
 
-	case CS_PREFIX_OPCODE:
 	case DS_PREFIX_OPCODE:
+	  ret = PREFIX_DS;
+	  /* Fall through.  */
+	case CS_PREFIX_OPCODE:
 	case ES_PREFIX_OPCODE:
 	case FS_PREFIX_OPCODE:
 	case GS_PREFIX_OPCODE:
@@ -3702,6 +3712,15 @@ md_assemble (char *line)
   if (i.bnd_prefix && !i.tm.opcode_modifier.bndprefixok)
     as_bad (_("expecting valid branch instruction after `bnd'"));
 
+  /* Check NOTRACK prefix.  */
+  if (i.notrack_prefix
+      && (!i.tm.opcode_modifier.notrackprefixok
+	  || i.reg_operands != 1
+	  || i.disp_operands != 0
+	  || i.mem_operands != 0
+	  || i.imm_operands != 0))
+    as_bad (_("expecting register indirect branch instruction after `notrack'"));
+
   if (i.tm.cpu_flags.bitfield.cpumpx)
     {
       if (flag_code == CODE_64BIT && i.prefix[ADDR_PREFIX])
@@ -3964,20 +3983,42 @@ parse_insn (char *line, char *mnemonic)
 	  else
 	    {
 	      /* Add prefix, checking for repeated prefixes.  */
-	      switch (add_prefix (current_templates->start->base_opcode))
+	      enum PREFIX_GROUP p
+		= add_prefix (current_templates->start->base_opcode);
+	      if (p == PREFIX_DS
+		  && current_templates->start->cpu_flags.bitfield.cpucet)
 		{
-		case PREFIX_EXIST:
-		  return NULL;
-		case PREFIX_REP:
-		  if (current_templates->start->cpu_flags.bitfield.cpuhle)
-		    i.hle_prefix = current_templates->start->name;
-		  else if (current_templates->start->cpu_flags.bitfield.cpumpx)
-		    i.bnd_prefix = current_templates->start->name;
-		  else
-		    i.rep_prefix = current_templates->start->name;
-		  break;
-		default:
-		  break;
+		  i.notrack_prefix = current_templates->start->name;
+		  /* Move NOTRACK_PREFIX_OPCODE to NOTRACK_PREFIX slot so
+		     that it is placed before others.  */
+		  i.prefix[SEG_PREFIX] = 0;
+		  i.prefix[NOTRACK_PREFIX] = NOTRACK_PREFIX_OPCODE;
+		}
+	      else
+		{
+		  switch (p)
+		    {
+		    case PREFIX_EXIST:
+		      return NULL;
+		    case PREFIX_REP:
+		      if (current_templates->start->cpu_flags.bitfield.cpuhle)
+			i.hle_prefix = current_templates->start->name;
+		      else if (current_templates->start->cpu_flags.bitfield.cpumpx)
+			i.bnd_prefix = current_templates->start->name;
+		      else
+			i.rep_prefix = current_templates->start->name;
+		      break;
+		    default:
+		      break;
+		    }
+
+		  if (i.notrack_prefix != NULL)
+		    {
+		      /* There must be no other prefixes after NOTRACK
+			 prefix.  */
+		      as_bad (_("expecting no other prefixes after `notrack'"));
+		      return NULL;
+		    }
 		}
 	    }
 	  /* Skip past PREFIX_SEPARATOR and reset token_start.  */
diff --git a/gas/configure b/gas/configure
index d3ae96e..96fa7cb 100755
--- a/gas/configure
+++ b/gas/configure
@@ -12583,7 +12583,7 @@ $as_echo "#define NDS32_DEFAULT_AUDIO_EXT 1" >>confdefs.h
 $as_echo "$enable_audio_ext" >&6; }
 	;;
 
-      i386 | riscv | s390 | sparc)
+      aarch64 | i386 | riscv | s390 | sparc)
 	if test $this_target = $target ; then
 
 cat >>confdefs.h <<_ACEOF
diff --git a/gas/configure.ac b/gas/configure.ac
index cc70aa7..da161b7 100644
--- a/gas/configure.ac
+++ b/gas/configure.ac
@@ -511,7 +511,7 @@ changequote([,])dnl
 	AC_MSG_RESULT($enable_audio_ext)
 	;;
 
-      i386 | riscv | s390 | sparc)
+      aarch64 | i386 | riscv | s390 | sparc)
 	if test $this_target = $target ; then
 	  AC_DEFINE_UNQUOTED(DEFAULT_ARCH, "${arch}", [Default architecture.])
 	fi
diff --git a/gas/configure.tgt b/gas/configure.tgt
index ca58b69..9d5e781 100644
--- a/gas/configure.tgt
+++ b/gas/configure.tgt
@@ -46,8 +46,8 @@ eval `echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'`
 # endian and arch.
 # Note: This table is alpha-sorted, please try to keep it that way.
 case ${cpu} in
-  aarch64)		cpu_type=aarch64 endian=little ;;
-  aarch64_be)		cpu_type=aarch64 endian=big ;;
+  aarch64)		cpu_type=aarch64 endian=little arch=aarch64;;
+  aarch64_be)		cpu_type=aarch64 endian=big arch=aarch64;;
   alpha*)		cpu_type=alpha ;;
   am33_2.0)		cpu_type=mn10300 endian=little ;;
   arc*eb)		cpu_type=arc endian=big ;;
@@ -126,7 +126,10 @@ generic_target=${cpu_type}-$vendor-$os
 case ${generic_target} in
   aarch64*-*-elf*)			fmt=elf;;
   aarch64*-*-fuchsia*)			fmt=elf;;
-  aarch64*-*-linux*)			fmt=elf em=linux ;;
+  aarch64*-*-linux*)			fmt=elf em=linux
+    case ${cpu}-${os} in
+      aarch64*-linux-gnu_ilp32)		arch=aarch64:32 ;;
+    esac ;;
 
   alpha-*-*vms*)			fmt=evax ;;
   alpha-*-osf*)				fmt=ecoff ;;
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index c1d6af7..67a7a13 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -385,6 +385,9 @@ if [expr ([istarget "i*86-*-*"] ||  [istarget "x86_64-*-*"]) && [gas_32_check]]
     run_dump_test "cet"
     run_dump_test "cet-intel"
     run_dump_test "pseudos"
+    run_dump_test "notrack"
+    run_dump_test "notrack-intel"
+    run_list_test "notrackbad" "-al"
 
     # These tests require support for 8 and 16 bit relocs,
     # so we only run them for ELF and COFF targets.
@@ -805,6 +808,9 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t
     run_dump_test "x86-64-cet"
     run_dump_test "x86-64-cet-intel"
     run_dump_test "x86-64-pseudos"
+    run_dump_test "x86-64-notrack"
+    run_dump_test "x86-64-notrack-intel"
+    run_list_test "x86-64-notrackbad" "-al"
 
     if { ![istarget "*-*-aix*"]
       && ![istarget "*-*-beos*"]
diff --git a/gas/testsuite/gas/i386/notrack-intel.d b/gas/testsuite/gas/i386/notrack-intel.d
new file mode 100644
index 0000000..b99e194
--- /dev/null
+++ b/gas/testsuite/gas/i386/notrack-intel.d
@@ -0,0 +1,29 @@
+#source: notrack.s
+#objdump: -dw -Mintel
+#name: i386 NOTRACK prefix (Intel disassembly)
+
+.*: +file format .*
+
+
+Disassembly of section .text:
+
+0+ <_start>:
+[ 	]*[a-f0-9]+:	3e ff d0             	notrack call eax
+[ 	]*[a-f0-9]+:	66 3e ff d0          	notrack call ax
+[ 	]*[a-f0-9]+:	3e ff e0             	notrack jmp eax
+[ 	]*[a-f0-9]+:	66 3e ff e0          	notrack jmp ax
+[ 	]*[a-f0-9]+:	f2 3e ff d0          	bnd notrack call eax
+[ 	]*[a-f0-9]+:	66 f2 3e ff d0       	bnd notrack call ax
+[ 	]*[a-f0-9]+:	f2 3e ff e0          	bnd notrack jmp eax
+[ 	]*[a-f0-9]+:	66 f2 3e ff e0       	bnd notrack jmp ax
+[ 	]*[a-f0-9]+:	3e ff d0             	notrack call eax
+[ 	]*[a-f0-9]+:	66 3e ff d0          	notrack call ax
+[ 	]*[a-f0-9]+:	3e ff e0             	notrack jmp eax
+[ 	]*[a-f0-9]+:	66 3e ff e0          	notrack jmp ax
+[ 	]*[a-f0-9]+:	f2 3e ff d0          	bnd notrack call eax
+[ 	]*[a-f0-9]+:	66 f2 3e ff d0       	bnd notrack call ax
+[ 	]*[a-f0-9]+:	f2 3e ff e0          	bnd notrack jmp eax
+[ 	]*[a-f0-9]+:	66 f2 3e ff e0       	bnd notrack jmp ax
+[ 	]*[a-f0-9]+:	3e f2 ff d0          	ds bnd call eax
+[ 	]*[a-f0-9]+:	3e 66 ff d0          	ds call ax
+#pass
diff --git a/gas/testsuite/gas/i386/notrack.d b/gas/testsuite/gas/i386/notrack.d
new file mode 100644
index 0000000..eda09eb
--- /dev/null
+++ b/gas/testsuite/gas/i386/notrack.d
@@ -0,0 +1,28 @@
+#objdump: -dw
+#name: i386 NOTRACK prefix
+
+.*: +file format .*
+
+
+Disassembly of section .text:
+


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-15 14:49 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-15 14:49 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  55017491feae3bd6d4e90862a2e850b39bfca446 (commit)
       via  2b9e8d6e01fa68976b65a28f428c62b78a893fd6 (commit)
       via  30cfa4c961bdf6b0b86d0ca6ba8bddb2f55b4cd3 (commit)
       via  dfba29cc316c649da098a49b084fbdd8ba3d84f2 (commit)
       via  762df937f84c5420d12522a966dd90c43ba554cf (commit)
       via  133dfc52743006530597ace8f779fb04741cdf7d (commit)
       via  78ffdc7c8838d5e8203ef2faf779ea5d332fef2f (commit)
       via  52a86f843b6dee1de9977293da9786649b146b05 (commit)
       via  b32465c97c12cc6049cefcde1beb3e2bfbfa232c (commit)
       via  3f3467ffc4b0a397a7017b8ab729e4c0060b25f0 (commit)
       via  70ab592fbae1725ac576012dd1242328e20e664a (commit)
       via  25499ac7ee92bca177c9436383ee167d6a220066 (commit)
       via  20c59b843a90300e5f9e07add83f5c72c8f994a6 (commit)
       via  602b88e3ab372729b53d130068f069dd363032db (commit)
       via  c96425c560d640df9c416ff4e6a8c49c1f3b1119 (commit)
       via  1a7bf198b67c4b99e9adeaeba38c6874ec354c12 (commit)
       via  e295202f606accec7623c961997a295a8e680247 (commit)
       via  c76081bc874d7d41eb6f41ea79a4ac0f906467d0 (commit)
       via  fdfb475260daf591d05407ea7affa39122a5b7f6 (commit)
       via  a54d5f8bb3eb4772a94779a5d37b644aeee72bca (commit)
       via  32035f5151b6ec76af0b62d9db8774b76eddc091 (commit)
       via  5f2ad7a3c73fcec0a7891794eb5aade73bac8523 (commit)
       via  786e3eba7915df35df1d98a300e06f757336c75b (commit)
       via  fba2af917d78bb1d8ef0d508b9246ad32fed1afd (commit)
       via  cd85e51ad3921eabd7030974ce375123a0848cce (commit)
       via  097eb00398891370779bb6562965bcdf357a292f (commit)
       via  67f46fed806465c005b15c97d33947f4c0abb25c (commit)
       via  adf3dde510088ef8dc46d04df05baf36adb0ed1e (commit)
       via  c0c05aad81ef32899e809570c18932bcfb588009 (commit)
       via  6bf56e7482e220ff98655b5285736a37dd602c17 (commit)
       via  73caa85d4a97eb991e581ccba3ff4eccce5e2e1d (commit)
       via  6830f270e7b6676e7a77c1b8080941e35003d918 (commit)
       via  68f2f2e308a8585c39ddb2f391a9ae8d779c5029 (commit)
       via  256afbc259c1e22fafba601a27cf3c8d7bdde417 (commit)
       via  be3f1006743f04f0b133de7fa8085a3e4c49b193 (commit)
       via  a4f89915135f6760917c01dc783de5b674234d84 (commit)
       via  de428bc53335d88c21eda38a823d5a4008468e52 (commit)
       via  99e2d67a0edd1a8feca82036feb93709fee488fa (commit)
       via  f2c29a169242d0c564afb46ecaf160422b28bfbb (commit)
       via  dc2be3d2f6de530aac40983e79e29e050f40e759 (commit)
       via  f96f371cbb33454544a9f1827c239c4375f0b60e (commit)
       via  7f401e8417160ba5cdad60a38c8a3cbce395a5c5 (commit)
       via  40e5240e1f32b1cc36c45551eb3f59253c40f317 (commit)
       via  5d69120bfff3e532242083acd636dc68f23ea831 (commit)
       via  9fc1813479e1518197949105c3f34da8c2e30984 (commit)
       via  db84b98a160d20f30dbdae3e3405cfb0fa680fbd (commit)
       via  2318686590bd252a47f494554dfc11bc18a3e58b (commit)
       via  aab82f4c201a2612c0fb6d5b66d8e4ce2f036f1c (commit)
       via  f78c0b915888ab388f9bdac826d7ac18dc944c28 (commit)
       via  58667758b1f907f8983d8a065333e3c38e311e88 (commit)
       via  53a346d8236aec06f1d3c767716d3340fb0aa013 (commit)
       via  21d1fbeed4b7c4d006e399437445519e6505088f (commit)
       via  8010f3ed8d459f98b8ff8b8577a0ed422c836e0d (commit)
       via  a6da46304894741d50a6f4ca2263b5cc158740e4 (commit)
       via  94bb8dfe28219e4b747cb874aae401d18df91c9b (commit)
       via  8248946cc5fd4522de630b9d86627af6e8fe0097 (commit)
       via  e645cf40b111daef4518a58547de577eb9379ccb (commit)
       via  d2732b697fe56ff4274a4bc45add9386c17f8a07 (commit)
       via  56eeb7f2cbdb16f513b825af426ee38d8f7efe3a (commit)
       via  dd9e66ee9549c872fad36a21d521b68b14429f38 (commit)
       via  38b123494b38ae09168387c0502acd1f23c1b601 (commit)
       via  d7ab4911f8aa3e1cd06ece40f74d0b4a532d6a10 (commit)
       via  f604c2a2a54ebf88e4a51986c7cdedffe7b3313a (commit)
       via  046734ff424bc5a4c1b6a69630d5bb31aa67165c (commit)
       via  313c59612298b022a408ca390bd5f73f28708015 (commit)
       via  27bfc1d1c2cbcafccddef51ef82b309ef147c4a8 (commit)
       via  146e6c5cc7b19ea56a033415511e38a2d0656e42 (commit)
       via  b48e3ca69abef81d729d01d7c720fb23697c3590 (commit)
      from  be1ab5123a19ccec14ba6e580ba4b5d354160abc (commit)

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

- Log -----------------------------------------------------------------
commit 55017491feae3bd6d4e90862a2e850b39bfca446
Merge: 762df93 2b9e8d6
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Mon May 15 16:45:57 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit 762df937f84c5420d12522a966dd90c43ba554cf
Merge: be1ab51 133dfc5
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Mon May 15 16:38:07 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

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

Summary of changes:
 bfd/ChangeLog                                      |  249 +++
 bfd/aout-adobe.c                                   |    1 +
 bfd/aout-target.h                                  |    3 +
 bfd/aout-tic30.c                                   |    3 +
 bfd/bfd-in2.h                                      |    5 +
 bfd/bfd.c                                          |   12 +-
 bfd/bout.c                                         |    1 +
 bfd/coff-alpha.c                                   |    3 +
 bfd/coff-mips.c                                    |    1 +
 bfd/coff-rs6000.c                                  |    1 +
 bfd/coff64-rs6000.c                                |    2 +
 bfd/coffcode.h                                     |    4 +
 bfd/elf-s390-common.c                              |    4 +-
 bfd/elf32-arc.c                                    |  439 ++++++-
 bfd/elf32-arm.c                                    |    8 +
 bfd/elf32-i386.c                                   | 1240 ++++++++++-----
 bfd/elf32-s390.c                                   |    2 +-
 bfd/elf64-s390.c                                   |    7 +-
 bfd/elf64-sparc.c                                  |   24 +-
 bfd/elf64-x86-64.c                                 | 1575 ++++++++++++--------
 bfd/elflink.c                                      |    3 +-
 bfd/elfxx-mips.c                                   |    2 +
 bfd/elfxx-target.h                                 |    3 +
 bfd/i386msdos.c                                    |    1 +
 bfd/i386os9k.c                                     |    2 +
 bfd/ieee.c                                         |    1 +
 bfd/libbfd-in.h                                    |    2 +
 bfd/libbfd.c                                       |    9 +
 bfd/libbfd.h                                       |    8 +
 bfd/mach-o-target.c                                |    1 +
 bfd/nlm-target.h                                   |    1 +
 bfd/oasys.c                                        |    1 +
 bfd/reloc.c                                        |   26 +
 bfd/som.c                                          |    1 +
 bfd/targets.c                                      |    3 +
 bfd/versados.c                                     |    1 +
 bfd/version.h                                      |    2 +-
 bfd/vms-alpha.c                                    |    5 +
 binutils/ChangeLog                                 |   38 +
 binutils/MAINTAINERS                               |    1 -
 binutils/NEWS                                      |    2 +
 binutils/readelf.c                                 |  202 +++
 binutils/testsuite/binutils-all/mips/mips.exp      |   10 +
 .../binutils-all/mips/mips16-extend-insn.d         |    4 +-
 .../testsuite/binutils-all/mips/mips16-undecoded.d |    2 +-
 .../testsuite/binutils-all/mips/mips16-undecoded.s |    1 -
 .../binutils-all/mips/mips16e2-extend-insn.d       |  355 +++++
 .../binutils-all/mips/mips16e2-undecoded.d         |  189 +++
 binutils/testsuite/binutils-all/strip-3.d          |    2 +-
 gas/ChangeLog                                      |  509 +++++++
 gas/config/tc-arc.c                                |  375 ++++-
 gas/config/tc-arc.h                                |   11 +
 gas/config/tc-arm.c                                |   19 +-
 gas/config/tc-mips.c                               |  202 ++-
 gas/doc/as.texinfo                                 |   21 +-
 gas/doc/c-arc.texi                                 |   16 +
 gas/doc/c-mips.texi                                |   26 +-
 gas/testsuite/gas/arc/attr-arc600.d                |   10 +
 gas/testsuite/gas/arc/attr-arc600_mul32x16.d       |   10 +
 gas/testsuite/gas/arc/attr-arc600_norm.d           |   10 +
 gas/testsuite/gas/arc/attr-arc601.d                |   10 +
 gas/testsuite/gas/arc/attr-arc601_mul32x16.d       |   10 +
 gas/testsuite/gas/arc/attr-arc601_mul64.d          |   10 +
 gas/testsuite/gas/arc/attr-arc601_norm.d           |   10 +
 gas/testsuite/gas/arc/attr-arc700.d                |   10 +
 gas/testsuite/gas/arc/attr-arcem.d                 |   10 +
 gas/testsuite/gas/arc/attr-archs.d                 |   11 +
 gas/testsuite/gas/arc/attr-autodetect-1.d          |   11 +
 gas/testsuite/gas/arc/attr-autodetect-1.s          |    4 +
 gas/testsuite/gas/arc/attr-cpu-a601.d              |    8 +
 gas/testsuite/gas/arc/attr-cpu-a601.s              |    1 +
 gas/testsuite/gas/arc/attr-cpu-a700.d              |    8 +
 gas/testsuite/gas/arc/attr-cpu-a700.s              |    1 +
 gas/testsuite/gas/arc/attr-cpu-em.d                |    8 +
 gas/testsuite/gas/arc/attr-cpu-em.s                |    1 +
 gas/testsuite/gas/arc/attr-cpu-hs.d                |    9 +
 gas/testsuite/gas/arc/attr-cpu-hs.s                |    1 +
 gas/testsuite/gas/arc/attr-em.d                    |   10 +
 gas/testsuite/gas/arc/attr-em4.d                   |   11 +
 gas/testsuite/gas/arc/attr-em4_dmips.d             |   11 +
 gas/testsuite/gas/arc/attr-em4_fpuda.d             |   11 +
 gas/testsuite/gas/arc/attr-em4_fpus.d              |   11 +
 gas/testsuite/gas/arc/attr-hs.d                    |   11 +
 gas/testsuite/gas/arc/attr-hs34.d                  |   11 +
 gas/testsuite/gas/arc/attr-hs38.d                  |   11 +
 gas/testsuite/gas/arc/attr-hs38_linux.d            |   11 +
 gas/testsuite/gas/arc/attr-mul64.d                 |   10 +
 gas/testsuite/gas/arc/attr-name.d                  |   22 +
 gas/testsuite/gas/arc/attr-name.s                  |   17 +
 gas/testsuite/gas/arc/attr-nps400.d                |   11 +
 gas/testsuite/gas/arc/attr-override-mcpu.d         |   10 +
 gas/testsuite/gas/arc/attr-override-mcpu.s         |    1 +
 gas/testsuite/gas/arc/attr-quarkse_em.d            |   11 +
 gas/testsuite/gas/arc/blank.s                      |    1 +
 gas/testsuite/gas/arc/cpu-pseudop-1.d              |    2 +-
 gas/testsuite/gas/arc/cpu-pseudop-2.d              |    2 +-
 gas/testsuite/gas/arc/nps400-0.d                   |    2 +-
 gas/testsuite/gas/arm/pr21458.d                    |   27 +
 gas/testsuite/gas/arm/pr21458.s                    |   40 +
 gas/testsuite/gas/elf/elf.exp                      |    3 +
 gas/testsuite/gas/elf/section2.e-arc               |    9 +
 gas/testsuite/gas/mips/addiu-error.d               |    3 +
 gas/testsuite/gas/mips/addiu-error.l               |    8 +
 gas/testsuite/gas/mips/addiu-error.s               |   11 +
 gas/testsuite/gas/mips/break-error.d               |    3 +
 gas/testsuite/gas/mips/break-error.l               |    8 +
 gas/testsuite/gas/mips/break-error.s               |   11 +
 gas/testsuite/gas/mips/elf-rel8-mips16.d           |    8 +-
 gas/testsuite/gas/mips/elf-rel8-mips16.s           |    7 +
 gas/testsuite/gas/mips/elf-rel8.d                  |    6 +
 gas/testsuite/gas/mips/elf-rel8.s                  |    6 +
 gas/testsuite/gas/mips/elf-rel9-mips16e2.d         |   69 +
 gas/testsuite/gas/mips/elf-rel9-mips16e2.s         |   62 +
 gas/testsuite/gas/mips/elf_ase_mips16e2-2.d        |   21 +
 gas/testsuite/gas/mips/elf_ase_mips16e2.d          |    5 +
 gas/testsuite/gas/mips/isa-override-2.d            |    4 +
 gas/testsuite/gas/mips/lui-1.d                     |    3 +
 gas/testsuite/gas/mips/lui-1.l                     |    2 +-
 gas/testsuite/gas/mips/lui-2.d                     |    3 +
 gas/testsuite/gas/mips/micromips@addiu-error.d     |    4 +
 gas/testsuite/gas/mips/micromips@addiu-error.l     |    8 +
 gas/testsuite/gas/mips/micromips@mips32r2-sync-1.d |   29 +
 gas/testsuite/gas/mips/mips.exp                    |  240 +++-
 gas/testsuite/gas/mips/mips16-32@mips16-asmacro.d  |    3 +-
 gas/testsuite/gas/mips/mips16-32@mips16-asmacro.s  |    2 +
 gas/testsuite/gas/mips/mips16-32@mips16-insn-e.l   |   14 +-
 gas/testsuite/gas/mips/mips16-32@mips16-sub.d      |   14 +-
 gas/testsuite/gas/mips/mips16-32@mips16e-64-sub.d  |    2 +-
 gas/testsuite/gas/mips/mips16-32@mips16e-sub.d     |    2 +-
 gas/testsuite/gas/mips/mips16-64.d                 |   14 +-
 gas/testsuite/gas/mips/mips16-64@mips16-64.d       |   14 +-
 gas/testsuite/gas/mips/mips16-64@mips16-asmacro.d  |    3 +-
 gas/testsuite/gas/mips/mips16-64@mips16-asmacro.s  |    2 +
 gas/testsuite/gas/mips/mips16-64@mips16-insn-e.l   |   22 +-
 gas/testsuite/gas/mips/mips16-64@mips16-macro.d    |   16 +-
 gas/testsuite/gas/mips/mips16-64@mips16.d          |   14 +-
 gas/testsuite/gas/mips/mips16-64@mips16e-64-sub.d  |    2 +-
 gas/testsuite/gas/mips/mips16-64@mips16e-sub.d     |    2 +-
 gas/testsuite/gas/mips/mips16-asmacro.s            |    1 -
 gas/testsuite/gas/mips/mips16-insn-e.l             |   22 +-
 gas/testsuite/gas/mips/mips16-macro.d              |   16 +-
 gas/testsuite/gas/mips/mips16-macro.l              |   12 -
 gas/testsuite/gas/mips/mips16-pcrel-1.d            |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-1.l            |    6 +-
 gas/testsuite/gas/mips/mips16-pcrel-1.s            |   19 +-
 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.d   |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.d   |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.d   |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.d   |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n32-4.d         |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n32-6.d         |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n64-4.d         |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n64-6.d         |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n64-sym32-4.d   |    2 +-
 .../gas/mips/mips16-pcrel-absolute-n64-sym32-6.d   |    2 +-
 .../gas/mips/mips16-pcrel-absolute-pic-6.d         |    2 +-
 .../gas/mips/mips16-pcrel-absolute-pic-n32-4.d     |    2 +-
 .../gas/mips/mips16-pcrel-absolute-pic-n32-6.d     |    2 +-
 .../gas/mips/mips16-pcrel-absolute-pic-n64-4.d     |    2 +-
 .../gas/mips/mips16-pcrel-absolute-pic-n64-6.d     |    2 +-
 .../mips/mips16-pcrel-absolute-pic-n64-sym32-4.d   |    2 +-
 .../mips/mips16-pcrel-absolute-pic-n64-sym32-6.d   |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-4.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-5.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-6.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-7.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-9.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-8.d |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-9.d |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-8.d |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-9.d |    2 +-
 .../gas/mips/mips16-pcrel-addend-n64-sym32-8.d     |    2 +-
 .../gas/mips/mips16-pcrel-addend-n64-sym32-9.d     |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-9.d |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n32-0.d        |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n32-1.d        |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n64-0.d        |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n64-1.d        |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d  |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d  |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-pic-1.d        |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-4.d      |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-5.d      |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-6.d      |    2 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-7.d      |    2 +-
 gas/testsuite/gas/mips/mips16-reg-error.d          |    3 +
 gas/testsuite/gas/mips/mips16-reg-error.l          |   54 +
 gas/testsuite/gas/mips/mips16-reg-error.s          |   81 +
 gas/testsuite/gas/mips/mips16-reloc-error.d        |    3 +
 gas/testsuite/gas/mips/mips16-reloc-error.l        |   28 +
 gas/testsuite/gas/mips/mips16-reloc-error.s        |   52 +
 gas/testsuite/gas/mips/mips16-sub.d                |   14 +-
 gas/testsuite/gas/mips/mips16-sub.s                |    1 +
 gas/testsuite/gas/mips/mips16.d                    |   14 +-
 gas/testsuite/gas/mips/mips16@addiu-error.d        |    4 +
 gas/testsuite/gas/mips/mips16@addiu-error.l        |    8 +
 gas/testsuite/gas/mips/mips16e-32@mips16-insn-e.l  |   14 +-
 gas/testsuite/gas/mips/mips16e-32@mips16e-64-sub.d |    2 +-
 gas/testsuite/gas/mips/mips16e-64-sub.d            |    2 +-
 gas/testsuite/gas/mips/mips16e-64-sub.s            |    1 +
 gas/testsuite/gas/mips/mips16e-sub.d               |    2 +-
 gas/testsuite/gas/mips/mips16e-sub.s               |    1 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.d |    4 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.l |  131 ++
 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.d |    4 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.l |   43 +
 .../gas/mips/mips16e2-32@mips16-macro-e.d          |    4 +
 .../gas/mips/mips16e2-32@mips16-macro-e.l          |   56 +
 .../gas/mips/mips16e2-32@mips16-macro-t.d          |    4 +
 .../gas/mips/mips16e2-32@mips16-macro-t.l          |   56 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.d  |    5 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.l  |   12 +
 gas/testsuite/gas/mips/mips16e2-32@mips16-sub.d    |    5 +
 .../gas/mips/mips16e2-32@mips16e-64-sub.d          |    5 +
 gas/testsuite/gas/mips/mips16e2-32@mips16e-64.d    |    4 +
 gas/testsuite/gas/mips/mips16e2-hilo-n32.d         |  419 ++++++
 gas/testsuite/gas/mips/mips16e2-hilo.d             |  419 ++++++
 gas/testsuite/gas/mips/mips16e2-hilo.s             |  239 +++
 gas/testsuite/gas/mips/mips16e2-imm-error.d        |    4 +
 gas/testsuite/gas/mips/mips16e2-imm-error.l        |   67 +
 gas/testsuite/gas/mips/mips16e2-imm-error.s        |   79 +
 gas/testsuite/gas/mips/mips16e2-lui.d              |   22 +
 gas/testsuite/gas/mips/mips16e2-lui.s              |   18 +
 gas/testsuite/gas/mips/mips16e2-mt-sub.d           |   33 +
 gas/testsuite/gas/mips/mips16e2-mt-sub.s           |    4 +
 gas/testsuite/gas/mips/mips16e2-mt.d               |   21 +
 gas/testsuite/gas/mips/mips16e2-mt.s               |   21 +
 gas/testsuite/gas/mips/mips16e2-reloc-error.d      |    4 +
 gas/testsuite/gas/mips/mips16e2-reloc-error.l      |   18 +
 gas/testsuite/gas/mips/mips16e2-reloc-error.s      |   39 +
 gas/testsuite/gas/mips/mips16e2-sub.d              |  749 ++++++++++
 gas/testsuite/gas/mips/mips16e2-sub.s              |    3 +
 gas/testsuite/gas/mips/mips16e2.d                  |  731 +++++++++
 gas/testsuite/gas/mips/mips16e2.s                  |  210 +++
 gas/testsuite/gas/mips/mips16e2@lui-2.d            |    4 +
 gas/testsuite/gas/mips/mips16e2@lui-2.l            |    5 +
 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-0.d   |   44 +
 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-1.d   |   52 +
 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-2.d   |    6 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-1.d    |    5 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-2.d    |   15 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-3.d    |    5 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-4.d    |   27 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-5.d    |    5 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-6.d    |   27 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute-7.d    |    5 +
 .../mips/mips16e2@mips16-pcrel-absolute-n32-4.d    |    5 +
 .../mips/mips16e2@mips16-pcrel-absolute-n32-6.d    |    5 +
 .../mips16e2@mips16-pcrel-absolute-n64-sym32-4.d   |    5 +
 .../mips16e2@mips16-pcrel-absolute-n64-sym32-6.d   |    5 +
 .../mips/mips16e2@mips16-pcrel-absolute-pic-4.d    |    5 +
 .../mips/mips16e2@mips16-pcrel-absolute-pic-6.d    |    5 +
 .../mips16e2@mips16-pcrel-absolute-pic-n32-4.d     |    5 +
 .../mips16e2@mips16-pcrel-absolute-pic-n32-6.d     |    5 +
 ...ips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d |    5 +
 ...ips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d |    5 +
 .../gas/mips/mips16e2@mips16-pcrel-absolute.d      |   15 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-2.d      |   20 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-3.d      |   19 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-6.d      |   20 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-7.d      |   19 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-8.d      |   43 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-9.d      |   43 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d  |   43 +
 .../gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d  |   43 +
 .../mips16e2@mips16-pcrel-addend-n64-sym32-8.d     |   75 +
 .../mips16e2@mips16-pcrel-addend-n64-sym32-9.d     |   75 +
 .../gas/mips/mips16e2@mips16-pcrel-delay-0.d       |   34 +
 .../gas/mips/mips16e2@mips16-pcrel-delay-1.d       |   39 +
 .../gas/mips/mips16e2@mips16-pcrel-n32-0.d         |   44 +
 .../gas/mips/mips16e2@mips16-pcrel-n32-1.d         |   52 +
 .../gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d   |   60 +
 .../gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d   |   68 +
 .../gas/mips/mips16e2@mips16-pcrel-reloc-2.d       |   20 +
 .../gas/mips/mips16e2@mips16-pcrel-reloc-3.d       |   19 +
 .../gas/mips/mips16e2@mips16-pcrel-reloc-6.d       |   20 +
 .../gas/mips/mips16e2@mips16-pcrel-reloc-7.d       |   19 +
 gas/testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d  |   34 +
 gas/testsuite/gas/mips/mips16e2@mips16e2-sub.d     |    5 +
 gas/testsuite/gas/mips/mips16e2@mips32r2-sync-1.d  |   29 +
 gas/testsuite/gas/mips/mips16e2@mips32r2-sync.d    |   29 +
 gas/testsuite/gas/mips/mips16e2@relax-swap3.d      |   19 +
 gas/testsuite/gas/mips/mips1@ecoff@sd-forward.d    |    5 -
 gas/testsuite/gas/mips/mips1@ecoff@sd.d            |    5 -
 gas/testsuite/gas/mips/mips1@isa-override-2.d      |    4 +
 gas/testsuite/gas/mips/mips1@isa-override-2.s      |   18 -
 gas/testsuite/gas/mips/mips2@ecoff@ld-forward.d    |    5 -
 gas/testsuite/gas/mips/mips2@ecoff@ld.d            |    5 -
 gas/testsuite/gas/mips/mips2@ecoff@sd-forward.d    |    5 -
 gas/testsuite/gas/mips/mips2@ecoff@sd.d            |    5 -
 gas/testsuite/gas/mips/mips2@isa-override-2.d      |    4 +
 gas/testsuite/gas/mips/mips2@isa-override-2.s      |   18 -
 gas/testsuite/gas/mips/mips32@ecoff@ld-forward.d   |    5 -
 gas/testsuite/gas/mips/mips32@ecoff@ld.d           |    5 -
 gas/testsuite/gas/mips/mips32@ecoff@sd-forward.d   |    5 -
 gas/testsuite/gas/mips/mips32@ecoff@sd.d           |    5 -
 gas/testsuite/gas/mips/mips32@isa-override-2.d     |    4 +
 gas/testsuite/gas/mips/mips32@isa-override-2.s     |   18 -
 gas/testsuite/gas/mips/mips32r2-sync-1.d           |   29 +
 gas/testsuite/gas/mips/mips32r2@ecoff@ld-forward.d |    5 -
 gas/testsuite/gas/mips/mips32r2@ecoff@ld.d         |    5 -
 gas/testsuite/gas/mips/mips32r2@ecoff@sd-forward.d |    5 -
 gas/testsuite/gas/mips/mips32r2@ecoff@sd.d         |    5 -
 gas/testsuite/gas/mips/mips32r2@isa-override-2.d   |    4 +
 gas/testsuite/gas/mips/mips32r2@isa-override-2.s   |   18 -
 gas/testsuite/gas/mips/mips32r3@isa-override-2.d   |    4 +
 gas/testsuite/gas/mips/mips32r3@isa-override-2.s   |   18 -
 gas/testsuite/gas/mips/mips32r5@isa-override-2.d   |    4 +
 gas/testsuite/gas/mips/mips32r5@isa-override-2.s   |   18 -
 gas/testsuite/gas/mips/mips32r6@isa-override-2.d   |    4 +
 gas/testsuite/gas/mips/mips32r6@isa-override-2.s   |   18 -
 gas/testsuite/gas/mips/octeon3@isa-override-2.d    |    4 +
 gas/testsuite/gas/mips/octeon3@isa-override-2.s    |   18 -
 gas/testsuite/gas/mips/r3000@ecoff@sd-forward.d    |    5 -
 gas/testsuite/gas/mips/r3000@ecoff@sd.d            |    5 -
 gas/testsuite/gas/mips/r3000@isa-override-2.d      |    4 +
 gas/testsuite/gas/mips/r3000@isa-override-2.l      |    4 -
 gas/testsuite/gas/mips/r3000@isa-override-2.s      |   18 -
 gas/testsuite/gas/mips/r3900@ecoff@ld-forward.d    |    5 -
 gas/testsuite/gas/mips/r3900@ecoff@ld.d            |    5 -
 gas/testsuite/gas/mips/r3900@ecoff@sd-forward.d    |    5 -
 gas/testsuite/gas/mips/r3900@ecoff@sd.d            |    5 -
 gas/testsuite/gas/mips/r3900@isa-override-2.d      |    4 +
 gas/testsuite/gas/mips/r3900@isa-override-2.s      |   18 -
 gdb/ChangeLog                                      |   58 +
 gdb/dwarf2read.c                                   |    7 +-
 gdb/mips-linux-tdep.c                              |   18 +-
 gdb/mips-tdep.c                                    |    9 +-
 gdb/mn10300-linux-tdep.c                           |   17 +-
 gdb/procfs.c                                       |    4 +-
 gdb/regcache.c                                     |  132 ++-
 gdb/rust-lang.c                                    |   22 +-
 gdb/tui/tui.c                                      |    2 +-
 gold/ChangeLog                                     |   21 +
 gold/aarch64.cc                                    |   27 +-
 gold/sparc.cc                                      |    2 +-
 gold/testsuite/Makefile.am                         |   11 +
 gold/testsuite/Makefile.in                         |   17 +-
 gold/testsuite/pr21430.s                           |   15 +
 gold/testsuite/pr21430.sh                          |   73 +
 include/ChangeLog                                  |   30 +
 include/elf/arc.h                                  |   34 +-
 include/elf/mips.h                                 |    3 +-
 include/opcode/arc-attrs.h                         |   72 +
 include/opcode/arc.h                               |   88 +-
 include/opcode/hppa.h                              |    2 +-
 include/opcode/mips.h                              |   39 +-
 ld/ChangeLog                                       |  168 +++
 ld/emulparams/elf_x86_64.sh                        |    2 +-
 ld/emulparams/i386lynx.sh                          |    1 +
 ld/emulparams/i386moss.sh                          |    1 +
 ld/emulparams/i386nw.sh                            |    1 +
 ld/ld.texinfo                                      |    2 +-
 ld/pe-dll.c                                        |   11 +
 ld/scripttempl/pe.sc                               |   10 +
 ld/scripttempl/pep.sc                              |   10 +
 ld/testsuite/ld-arc/attr-merge-0.d                 |   12 +
 ld/testsuite/ld-arc/attr-merge-0.s                 |    2 +
 ld/testsuite/ld-arc/attr-merge-0e.s                |    1 +
 ld/testsuite/ld-arc/attr-merge-1.d                 |   12 +
 ld/testsuite/ld-arc/attr-merge-1.s                 |    2 +
 ld/testsuite/ld-arc/attr-merge-1e.s                |    2 +
 ld/testsuite/ld-arc/attr-merge-2.d                 |   12 +
 ld/testsuite/ld-arc/attr-merge-2.s                 |    2 +
 ld/testsuite/ld-arc/attr-merge-3.d                 |   12 +
 ld/testsuite/ld-arc/attr-merge-3.s                 |    1 +
 ld/testsuite/ld-arc/attr-merge-3e.s                |    1 +
 ld/testsuite/ld-arc/attr-merge-4.s                 |    2 +
 ld/testsuite/ld-arc/attr-merge-5.d                 |   13 +
 ld/testsuite/ld-arc/attr-merge-5a.s                |    3 +
 ld/testsuite/ld-arc/attr-merge-5b.s                |    2 +
 ld/testsuite/ld-arc/attr-merge-conflict-isa.d      |    6 +
 ld/testsuite/ld-arc/attr-merge-err-isa.d           |    5 +
 ld/testsuite/ld-arc/attr-merge-err-quarkse.d       |    5 +
 ld/testsuite/ld-arc/attr-merge-incompatible-cpu.d  |    5 +
 ld/testsuite/ld-arc/attr-quarkse.s                 |    2 +
 ld/testsuite/ld-arc/attr-quarkse2.s                |    2 +
 ld/testsuite/ld-arc/got-01.d                       |    2 +-
 ld/testsuite/ld-arm/arm-elf.exp                    |    3 +-
 ld/testsuite/ld-arm/cmse-implib.type               |    9 +
 ld/testsuite/ld-i386/i386.exp                      |   22 +
 ld/testsuite/ld-i386/plt-pic2.dd                   |   33 +
 ld/testsuite/ld-i386/plt2.dd                       |   34 +
 ld/testsuite/ld-i386/plt2.rd                       |    9 +
 ld/testsuite/ld-i386/plt2.s                        |    7 +
 ld/testsuite/ld-i386/pr17689now.rd                 |    3 +-
 ld/testsuite/ld-i386/pr20830.d                     |    4 +-
 ld/testsuite/ld-i386/property-x86-3.d              |    9 +
 ld/testsuite/ld-i386/property-x86-3.s              |   51 +
 ld/testsuite/ld-ifunc/ifunc-16-i386-now.d          |   10 +
 ld/testsuite/ld-ifunc/ifunc-16-x86-64-now.d        |   10 +
 ld/testsuite/ld-ifunc/ifunc-2-i386-now.d           |   36 +
 ld/testsuite/ld-ifunc/ifunc-2-local-i386-now.d     |   36 +
 ld/testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d   |   32 +
 ld/testsuite/ld-ifunc/ifunc-2-x86-64-now.d         |   32 +
 ld/testsuite/ld-ifunc/pr17154-i386-now.d           |   52 +
 ld/testsuite/ld-ifunc/pr17154-x86-64-now.d         |   51 +
 ld/testsuite/ld-mips-elf/mips-elf.exp              |   10 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-0.d        |   37 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-1.d        |   45 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d |   17 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d |   17 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d    |    6 +
 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d    |    6 +
 .../ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d       |    6 +
 .../ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d       |    6 +
 ld/testsuite/ld-x86-64/bnd-branch-1-now.d          |   45 +
 ld/testsuite/ld-x86-64/bnd-ifunc-1-now.d           |   33 +
 ld/testsuite/ld-x86-64/bnd-ifunc-2-now.d           |   59 +
 ld/testsuite/ld-x86-64/bnd-ifunc-2.d               |    2 +-
 ld/testsuite/ld-x86-64/bnd-plt-1-now.d             |   55 +
 ld/testsuite/ld-x86-64/bnd-plt-1.d                 |    2 +-
 ld/testsuite/ld-x86-64/load1b-nacl.d               |   76 +-
 ld/testsuite/ld-x86-64/load1b.d                    |   77 +-
 ld/testsuite/ld-x86-64/mpx.exp                     |   10 +
 ld/testsuite/ld-x86-64/mpx3.dd                     |    2 +-
 ld/testsuite/ld-x86-64/mpx3n.dd                    |   28 +
 ld/testsuite/ld-x86-64/mpx4.dd                     |    2 +-
 ld/testsuite/ld-x86-64/mpx4n.dd                    |   25 +
 ld/testsuite/ld-x86-64/plt-main-bnd-now.rd         |    3 +
 ld/testsuite/ld-x86-64/plt-main-bnd.dd             |    2 +-
 ld/testsuite/ld-x86-64/plt2.dd                     |   33 +
 ld/testsuite/ld-x86-64/plt2.rd                     |    9 +
 ld/testsuite/ld-x86-64/plt2.s                      |    7 +
 ld/testsuite/ld-x86-64/pr17689now.rd               |    3 +-
 ld/testsuite/ld-x86-64/pr20253-1h.d                |   12 +-
 ld/testsuite/ld-x86-64/pr20830a-now.d              |   68 +
 ld/testsuite/ld-x86-64/pr20830a.d                  |    4 +-
 ld/testsuite/ld-x86-64/pr20830b-now.d              |   60 +
 ld/testsuite/ld-x86-64/pr20830b.d                  |    4 +-
 ld/testsuite/ld-x86-64/pr21038a-now.d              |   72 +
 ld/testsuite/ld-x86-64/pr21038a.d                  |    4 +-
 ld/testsuite/ld-x86-64/pr21038b-now.d              |   70 +
 ld/testsuite/ld-x86-64/pr21038b.d                  |    4 +-
 ld/testsuite/ld-x86-64/pr21038c-now.d              |   87 ++
 ld/testsuite/ld-x86-64/pr21038c.d                  |    8 +-
 ld/testsuite/ld-x86-64/pr21481a.c                  |    8 +
 ld/testsuite/ld-x86-64/pr21481b.S                  |   56 +
 ld/testsuite/ld-x86-64/property-x86-3.d            |    9 +
 ld/testsuite/ld-x86-64/property-x86-3.s            |   51 +
 ld/testsuite/ld-x86-64/x86-64.exp                  |   75 +
 opcodes/ChangeLog                                  |   54 +
 opcodes/arc-dis.c                                  |    3 +-
 opcodes/arc-ext-tbl.h                              |   10 +-
 opcodes/arc-tbl.h                                  |   46 +-
 opcodes/micromips-opc.c                            |   10 +-
 opcodes/mips-dis.c                                 |   90 +-
 opcodes/mips-opc.c                                 |   18 +-
 opcodes/mips16-opc.c                               |  102 ++-
 449 files changed, 13045 insertions(+), 2052 deletions(-)
 create mode 100644 binutils/testsuite/binutils-all/mips/mips16e2-extend-insn.d
 create mode 100644 binutils/testsuite/binutils-all/mips/mips16e2-undecoded.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc600.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc600_mul32x16.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc600_norm.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc601.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc601_mul32x16.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc601_mul64.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc601_norm.d
 create mode 100644 gas/testsuite/gas/arc/attr-arc700.d
 create mode 100644 gas/testsuite/gas/arc/attr-arcem.d
 create mode 100644 gas/testsuite/gas/arc/attr-archs.d
 create mode 100644 gas/testsuite/gas/arc/attr-autodetect-1.d
 create mode 100644 gas/testsuite/gas/arc/attr-autodetect-1.s
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-a601.d
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-a601.s
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-a700.d
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-a700.s
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-em.d
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-em.s
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-hs.d
 create mode 100644 gas/testsuite/gas/arc/attr-cpu-hs.s
 create mode 100644 gas/testsuite/gas/arc/attr-em.d
 create mode 100644 gas/testsuite/gas/arc/attr-em4.d
 create mode 100644 gas/testsuite/gas/arc/attr-em4_dmips.d
 create mode 100644 gas/testsuite/gas/arc/attr-em4_fpuda.d
 create mode 100644 gas/testsuite/gas/arc/attr-em4_fpus.d
 create mode 100644 gas/testsuite/gas/arc/attr-hs.d
 create mode 100644 gas/testsuite/gas/arc/attr-hs34.d
 create mode 100644 gas/testsuite/gas/arc/attr-hs38.d
 create mode 100644 gas/testsuite/gas/arc/attr-hs38_linux.d
 create mode 100644 gas/testsuite/gas/arc/attr-mul64.d
 create mode 100644 gas/testsuite/gas/arc/attr-name.d
 create mode 100644 gas/testsuite/gas/arc/attr-name.s
 create mode 100644 gas/testsuite/gas/arc/attr-nps400.d
 create mode 100644 gas/testsuite/gas/arc/attr-override-mcpu.d
 create mode 100644 gas/testsuite/gas/arc/attr-override-mcpu.s
 create mode 100644 gas/testsuite/gas/arc/attr-quarkse_em.d
 create mode 100644 gas/testsuite/gas/arc/blank.s
 create mode 100644 gas/testsuite/gas/arm/pr21458.d
 create mode 100644 gas/testsuite/gas/arm/pr21458.s
 create mode 100644 gas/testsuite/gas/elf/section2.e-arc
 create mode 100644 gas/testsuite/gas/mips/addiu-error.d
 create mode 100644 gas/testsuite/gas/mips/addiu-error.l
 create mode 100644 gas/testsuite/gas/mips/addiu-error.s
 create mode 100644 gas/testsuite/gas/mips/break-error.d
 create mode 100644 gas/testsuite/gas/mips/break-error.l
 create mode 100644 gas/testsuite/gas/mips/break-error.s
 create mode 100644 gas/testsuite/gas/mips/elf-rel9-mips16e2.d
 create mode 100644 gas/testsuite/gas/mips/elf-rel9-mips16e2.s
 create mode 100644 gas/testsuite/gas/mips/elf_ase_mips16e2-2.d
 create mode 100644 gas/testsuite/gas/mips/elf_ase_mips16e2.d
 create mode 100644 gas/testsuite/gas/mips/isa-override-2.d
 create mode 100644 gas/testsuite/gas/mips/lui-1.d
 create mode 100644 gas/testsuite/gas/mips/lui-2.d
 create mode 100644 gas/testsuite/gas/mips/micromips@addiu-error.d
 create mode 100644 gas/testsuite/gas/mips/micromips@addiu-error.l
 create mode 100644 gas/testsuite/gas/mips/micromips@mips32r2-sync-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-32@mips16-asmacro.s
 create mode 100644 gas/testsuite/gas/mips/mips16-64@mips16-asmacro.s
 delete mode 100644 gas/testsuite/gas/mips/mips16-macro.l
 create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.d
 create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.l
 create mode 100644 gas/testsuite/gas/mips/mips16-reg-error.s
 create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.d
 create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.l
 create mode 100644 gas/testsuite/gas/mips/mips16-reloc-error.s
 create mode 100644 gas/testsuite/gas/mips/mips16@addiu-error.d
 create mode 100644 gas/testsuite/gas/mips/mips16@addiu-error.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-e.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-insn-t.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-e.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-e.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-t.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro-t.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-macro.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16e-64-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-32@mips16e-64.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo-n32.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-hilo.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-imm-error.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-lui.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-lui.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-mt-sub.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-mt.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-mt.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2-reloc-error.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2-sub.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2.s
 create mode 100644 gas/testsuite/gas/mips/mips16e2@lui-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@lui-2.l
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-3.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-5.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-7.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-n64-sym32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute-pic-n64-sym32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-absolute.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-3.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-7.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n32-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-addend-n64-sym32-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-delay-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-delay-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n32-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-n64-sym32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-3.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16-pcrel-reloc-7.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16e2-mt-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips16e2-sub.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips32r2-sync-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@mips32r2-sync.d
 create mode 100644 gas/testsuite/gas/mips/mips16e2@relax-swap3.d
 delete mode 100644 gas/testsuite/gas/mips/mips1@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips1@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/mips1@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips1@isa-override-2.s
 delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@ld-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@ld.d
 delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips2@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/mips2@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips2@isa-override-2.s
 delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@ld-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@ld.d
 delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips32@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/mips32@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips32@isa-override-2.s
 create mode 100644 gas/testsuite/gas/mips/mips32r2-sync-1.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@ld-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@ld.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r2@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/mips32r2@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r2@isa-override-2.s
 create mode 100644 gas/testsuite/gas/mips/mips32r3@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r3@isa-override-2.s
 create mode 100644 gas/testsuite/gas/mips/mips32r5@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r5@isa-override-2.s
 create mode 100644 gas/testsuite/gas/mips/mips32r6@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/mips32r6@isa-override-2.s
 create mode 100644 gas/testsuite/gas/mips/octeon3@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/octeon3@isa-override-2.s
 delete mode 100644 gas/testsuite/gas/mips/r3000@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/r3000@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.l
 delete mode 100644 gas/testsuite/gas/mips/r3000@isa-override-2.s
 delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@ld-forward.d
 delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@ld.d
 delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@sd-forward.d
 delete mode 100644 gas/testsuite/gas/mips/r3900@ecoff@sd.d
 create mode 100644 gas/testsuite/gas/mips/r3900@isa-override-2.d
 delete mode 100644 gas/testsuite/gas/mips/r3900@isa-override-2.s
 create mode 100644 gold/testsuite/pr21430.s
 create mode 100755 gold/testsuite/pr21430.sh
 create mode 100644 include/opcode/arc-attrs.h
 create mode 100644 ld/testsuite/ld-arc/attr-merge-0.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-0.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-0e.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-1.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-1.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-1e.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-2.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-2.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-3.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-3.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-3e.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-4.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-5.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-5a.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-5b.s
 create mode 100644 ld/testsuite/ld-arc/attr-merge-conflict-isa.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-err-isa.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-err-quarkse.d
 create mode 100644 ld/testsuite/ld-arc/attr-merge-incompatible-cpu.d
 create mode 100644 ld/testsuite/ld-arc/attr-quarkse.s
 create mode 100644 ld/testsuite/ld-arc/attr-quarkse2.s
 create mode 100644 ld/testsuite/ld-arm/cmse-implib.type
 create mode 100644 ld/testsuite/ld-i386/plt-pic2.dd
 create mode 100644 ld/testsuite/ld-i386/plt2.dd
 create mode 100644 ld/testsuite/ld-i386/plt2.rd
 create mode 100644 ld/testsuite/ld-i386/plt2.s
 create mode 100644 ld/testsuite/ld-i386/property-x86-3.d
 create mode 100644 ld/testsuite/ld-i386/property-x86-3.s
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-16-i386-now.d
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-16-x86-64-now.d
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-i386-now.d
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-local-i386-now.d
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-local-x86-64-now.d
 create mode 100644 ld/testsuite/ld-ifunc/ifunc-2-x86-64-now.d
 create mode 100644 ld/testsuite/ld-ifunc/pr17154-i386-now.d
 create mode 100644 ld/testsuite/ld-ifunc/pr17154-x86-64-now.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-2.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-addend-6.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n32-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16e2-pcrel-n64-sym32-1.d
 create mode 100644 ld/testsuite/ld-x86-64/bnd-branch-1-now.d
 create mode 100644 ld/testsuite/ld-x86-64/bnd-ifunc-1-now.d
 create mode 100644 ld/testsuite/ld-x86-64/bnd-ifunc-2-now.d
 create mode 100644 ld/testsuite/ld-x86-64/bnd-plt-1-now.d
 create mode 100644 ld/testsuite/ld-x86-64/mpx3n.dd
 create mode 100644 ld/testsuite/ld-x86-64/mpx4n.dd
 create mode 100644 ld/testsuite/ld-x86-64/plt-main-bnd-now.rd
 create mode 100644 ld/testsuite/ld-x86-64/plt2.dd
 create mode 100644 ld/testsuite/ld-x86-64/plt2.rd
 create mode 100644 ld/testsuite/ld-x86-64/plt2.s
 create mode 100644 ld/testsuite/ld-x86-64/pr20830a-now.d
 create mode 100644 ld/testsuite/ld-x86-64/pr20830b-now.d
 create mode 100644 ld/testsuite/ld-x86-64/pr21038a-now.d
 create mode 100644 ld/testsuite/ld-x86-64/pr21038b-now.d
 create mode 100644 ld/testsuite/ld-x86-64/pr21038c-now.d
 create mode 100644 ld/testsuite/ld-x86-64/pr21481a.c
 create mode 100644 ld/testsuite/ld-x86-64/pr21481b.S
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-3.d
 create mode 100644 ld/testsuite/ld-x86-64/property-x86-3.s

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 27ac8c3..52c192d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,252 @@
+2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* elfxx-mips.c (print_mips_ases): Handle MIPS16e2 ASE.
+
+2017-05-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf32-i386.c (elf_i386_parse_gnu_properties): Merge
+	GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED
+	properties.
+	* elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise.
+
+2017-05-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf64-x86-64.c (elf_x86_64_link_hash_entry): Rename plt_bnd
+	to plt_second.
+	(elf_x86_64_link_hash_table): Rename plt_bnd/plt_bnd_eh_frame
+	to plt_second/plt_second_eh_frame.
+	(elf_x86_64_link_hash_newfunc): Updated.
+	(elf_x86_64_allocate_dynrelocs): Likewise.
+	(elf_x86_64_size_dynamic_sections): Likewise.
+	(elf_x86_64_relocate_section): Likewise.
+	(elf_x86_64_finish_dynamic_symbol): Likewise.
+	(elf_x86_64_finish_dynamic_sections): Likewise.
+	(elf_x86_64_plt_type): Rename plt_bnd to plt_second.
+	(elf_x86_64_get_synthetic_symtab): Updated.  Also scan the
+	.plt.sec section.
+	(elf_backend_setup_gnu_properties): Updated.  Create the
+	.plt.sec section instead of the .plt.sec section.
+
+2017-05-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf32-i386.c (elf_i386_allocate_dynrelocs): Partially revert
+	commit 25070364b0ce33eed46aa5d78ebebbec6accec7e.
+	* elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewse.
+
+2017-05-10  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* elf64-sparc.c (elf64_sparc_set_reloc): New function.
+	(bfd_elf64_set_reloc): Define.
+	(elf64_sparc_write_relocs): Use `canon_reloc_count'.
+
+2017-05-10  Jose E. Marchesi  <jose.marchesi@oracle.com>
+
+	* targets.c (BFD_JUMP_TABLE_RELOCS): Add NAME##_set_reloc.
+	(struct bfd_target): New field _bfd_set_reloc.
+	* bfd.c (bfd_set_reloc): Call backend _set_bfd.
+	* reloc.c (_bfd_generic_set_reloc): New function.
+	* coffcode.h (coff_set_reloc): Define to _bfd_generic_set_reloc.
+	* nlm-target.h (nlm_set_reloc): Likewise.
+	* coff-rs6000.c (_bfd_xcoff_set_reloc): Likewise.
+	* aout-tic30.c (MY_set_reloc): Likewise.
+	* aout-target.h (MY_set_reloc): Likewise.
+	* elfxx-target.h (bfd_elfNN_set_reloc): Likewise.
+	* coff-alpha.c (_bfd_ecoff_set_reloc): Likewise.
+	* mach-o-target.c (bfd_mach_o_set_reloc): Likewise.
+	* vms-alpha.c (alpha_vms_set_reloc): Likewise.
+	* aout-adobe.c (aout_32_set_reloc): Likewise.
+	* bout.c (b_out_set_reloc): Likewise.
+	* coff-mips.c (_bfd_ecoff_set_reloc): Likewise.
+	* i386os9k.c (aout_32_set_reloc): Likewise.
+	* ieee.c (ieee_set_reloc): Likewise.
+	* oasys.c (oasys_set_reloc): Likewise.
+	* som.c (som_set_reloc): Likewise.
+	* versados.c (versados_set_reloc): Likewise.
+	* coff64-rs6000.c (rs6000_xcoff64_vec): Add
+	_bfd_generic_set_reloc.
+	(rs6000_xcoff64_aix_vec): LIkewise.
+	* libbfd.c (_bfd_norelocs_set_reloc): New function.
+	* libbfd-in.h: Prototype for _bfd_norelocs_set_reloc.
+	* i386msdos.c (msdos_set_reloc): Define to
+	_bfd_norelocs_set_reloc.
+	* elfcode.h (elf_set_reloc): Define.
+	* bfd-in2.h: Regenerated.
+
+2017-05-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR ld/21481
+	* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Use .plt.bnd
+	for IFUNC function address.
+
+2017-05-10  Claudiu Zissulescu  <claziss@synopsys.com>
+
+	* elf32-arc.c (FEATURE_LIST_NAME): Define.
+	(CONFLICT_LIST): Likewise.
+	(opcode/arc-attrs.h): Include.
+	(arc_elf_print_private_bfd_data): Print OSABI v4 flag.
+	(arc_extract_features): New file.
+	(arc_stralloc): Likewise.
+	(arc_elf_merge_attributes): Likewise.
+	(arc_elf_merge_private_bfd_data): Use object attributes.
+	(bfd_arc_get_mach_from_attributes): New function.
+	(arc_elf_object_p): Use object attributes.
+	(arc_elf_final_write_processing): Likewise.
+	(elf32_arc_obj_attrs_arg_type): New function.
+	(elf32_arc_obj_attrs_handle_unknown): Likewise.
+	(elf32_arc_section_from_shdr): Likewise.
+	(elf_backend_obj_attrs_vendor): Define.
+	(elf_backend_obj_attrs_section): Likewise.
+	(elf_backend_obj_attrs_arg_type): Likewise.
+	(elf_backend_obj_attrs_section_type): Likewise.
+	(elf_backend_obj_attrs_handle_unknown): Likewise.
+	(elf_backend_section_from_shdr): Likewise.
+
+2017-05-09  Andrew Goedhart  <Andrewgoedhart@simplepowersolutions.co.za>
+
+	PR ld/21458
+	* elf32-arm.c (elf32_arm_final_link_relocate): Set the bottom bit
+	of the value when resolving a R_ARM_THM_ALU_PREL_11_0 relocation
+	and the destination is a Thumb symbol.
+
+2017-05-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf32-i386.c (elf_i386_get_synthetic_symtab): Add missing
+	initializer to silence GCC 4.2.
+	* lf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise.
+
+2017-05-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf64-x86-64.c (PLT_ENTRY_SIZE): Renamed to ...
+	(LAZY_PLT_ENTRY_SIZE): This.
+	(NON_LAZY_PLT_ENTRY_SIZE): New.
+	(elf_x86_64_plt0_entry): Renamed to ...
+	(elf_x86_64_lazy_plt0_entry): This.
+	(elf_x86_64_plt_entry): Renamed to ...
+	(elf_x86_64_lazy_plt_entry): This.
+	(elf_x86_64_bnd_plt0_entry): Renamed to ...
+	(elf_x86_64_lazy_bnd_plt0_entry): This.
+	(elf_x86_64_legacy_plt_entry): Removed.
+	(elf_x86_64_bnd_plt_entry): Renamed to ...
+	(elf_x86_64_lazy_bnd_plt_entry): This.
+	(elf_x86_64_legacy_plt2_entry): Renamed to ...
+	(elf_x86_64_non_lazy_plt_entry): This.
+	(elf_x86_64_bnd_plt2_entry): Renamed to ...
+	(elf_x86_64_non_lazy_bnd_plt_entry): This.
+	(elf_x86_64_eh_frame_plt): Renamed to ...
+	(elf_x86_64_eh_frame_lazy_plt): This.
+	(elf_x86_64_eh_frame_bnd_plt): Renamed to ...
+	(elf_x86_64_eh_frame_lazy_bnd_plt): This.
+	(elf_x86_64_eh_frame_plt_got): Renamed to ...
+	(elf_x86_64_eh_frame_non_lazy_plt): This.
+	(elf_x86_64_lazy_plt_layout): New.
+	(elf_x86_64_non_lazy_plt_layout): Likewise.
+	(elf_x86_64_plt_layout): Likewise.
+	(elf_x86_64_backend_data): Remove PLT layout information.  Add
+	os for target system.
+	(GET_PLT_ENTRY_SIZE): Removed.
+	(elf_x86_64_lazy_plt): New.
+	(elf_x86_64_non_lazy_plt): Likewise.
+	(elf_x86_64_lazy_bnd_plt): Likewise.
+	(elf_x86_64_non_lazy_bnd_plt): Likewise.
+	(elf_x86-64_arch_bed): Updated.
+	(elf_x86_64_link_hash_table): Add plt, lazy_plt and non_lazy_plt.
+	(elf_x86_64_create_dynamic_sections): Removed.
+	(elf_x86_64_check_relocs): Don't check elf.dynobj.  Don't call
+	_bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section.
+	(elf_x86-64_adjust_dynamic_symbol): Updated.
+	(elf_x86_64_allocate_dynrelocs): Updated.  Pass 0 as PLT header
+	size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate
+	size for PLT0 if there is no PLT0.  Get plt_entry_size from
+	non_lazy_plt for non-lazy PLT entries.
+	(elf_x86_64_size_dynamic_sections): Updated.  Get plt_entry_size
+	from non_lazy_plt for non-lazy PLT entries.
+	(elf_x86-64_relocate_section): Updated.  Properly get PLT index
+	if there is no PLT0.
+	(elf_x86_64_finish_dynamic_symbol): Updated.  Fill the first slot
+	in the PLT entry with generic PLT layout.  Fill the non-lazy PLT
+	entries with non-lazy PLT layout.  Don't fill the second and third
+	slots in the PLT entry if there is no PLT0.
+	(elf_x86_64_finish_dynamic_sections): Updated.  Don't fill PLT0
+	if there is no PLT0.  Set sh_entsize on the .plt.got section.
+	(compare_relocs): New.
+	(elf_x86_64_plt_type): Likewise.
+	(elf_x86_64_plt): Likewise.
+	(elf_x86_64_nacl_plt): New. Forward declaration.
+	(elf_x86_64_get_plt_sym_val): Removed.
+	(elf_x86_64_get_synthetic_symtab): Rewrite to check PLT sections
+	against all dynamic relocations.
+	(elf_x86_64_link_setup_gnu_properties): New function.
+	(elf_backend_create_dynamic_sections): Updated.
+	(elf_backend_setup_gnu_properties): New.
+	(elf_x86_64_nacl_plt): New.
+	(elf_x86_64_nacl_arch_bed): Updated.
+
+2017-05-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf32-i386.c (PLT_ENTRY_SIZE): Renamed to ...
+	(LAZY_PLT_ENTRY_SIZE): This.
+	(NON_LAZY_PLT_ENTRY_SIZE): New.
+	(elf_i386_plt0_entry): Renamed to ...
+	(elf_i386_lazy_plt0_entry): This.
+	(elf_i386_plt_entry): Renamed to ...
+	(elf_i386_lazy_plt_entry): This.
+	(elf_i386_pic_plt0_entry): Renamed to ...
+	(elf_i386_pic_lazy_plt0_entry): This.
+	(elf_i386_pic_plt_entry): Renamed to ...
+	(elf_i386_pic_lazy_plt_entry): This.
+	(elf_i386_got_plt_entry): Renamed to ...
+	(elf_i386_non_lazy_plt_entry): This.
+	(elf_i386_pic_got_plt_entry): Renamed to ...
+	(elf_i386_pic_non_lazy_plt_entry): This.
+	(elf_i386_eh_frame_plt): Renamed to ...
+	(elf_i386_eh_frame_lazy_plt): This.
+	(elf_i386_eh_frame_plt_got): Renamed to ...
+	(elf_i386_eh_frame_non_lazy_plt): This.
+	(elf_i386_plt_layout): Renamed to ...
+	(elf_i386_lazy_plt_layout): This.  Remove eh_frame_plt_got and
+	eh_frame_plt_got_size.
+	(elf_i386_non_lazy_plt_layout): New.
+	(elf_i386_plt_layout): Likewise.
+	(elf_i386_non_lazy_plt): Likewise.
+	(GET_PLT_ENTRY_SIZE): Removed.
+	(elf_i386_plt): Renamed to ...
+	(elf_i386_lazy_plt): This.
+	(elf_i386_backend_data): Remove plt.  Rename is_vxworks to os.
+	(elf_i386_arch_bed): Updated.
+	(elf_i386_link_hash_table): Add plt, lazy_plt and non_lazy_plt.
+	(elf_i386_create_dynamic_sections): Removed.
+	(elf_i386_check_relocs): Don't check elf.dynobj.  Don't call
+	_bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section.
+	(elf_i386_adjust_dynamic_symbol): Updated.
+	(elf_i386_allocate_dynrelocs): Updated.  Pass 0 as PLT header
+	size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate
+	size for PLT0 if there is no PLT0.
+	(elf_i386_size_dynamic_sections): Updated.  Check whether GOT
+	output section is discarded only if GOT isn't empty.
+	(elf_i386_relocate_section): Updated.  Properly get PLT index
+	if there is no PLT0.
+	(elf_i386_finish_dynamic_symbol): Updated.  Don't fill the
+	second and third slots in the PLT entry if there is no PLT0.
+	(elf_i386_finish_dynamic_sections): Updated.  Don't fill PLT0
+	if there is no PLT0.  Set sh_entsize on the .plt.got section.
+	(elf_i386_nacl_plt): Forward declaration.
+	(elf_i386_get_plt_sym_val): Removed.
+	(elf_i386_get_synthetic_symtab): Rewrite to check PLT sections
+	against all dynamic relocations.
+	(elf_i386_link_setup_gnu_properties): New function.
+	(elf_backend_create_dynamic_sections): Updated.
+	(elf_backend_setup_gnu_properties): New.
+	(elf_i386_nacl_plt): Updated.
+	(elf_i386_nacl_arch_bed): Likewise.
+	(elf_i386_vxworks_arch_bed): Likewise.
+
+2017-05-08  Thomas Preud'homme  <thomas.preudhomme@arm.com>
+
+	* elflink.c (elf_output_implib): Remove executable flag from import
+	library bfd.
+	* elf32-arm.c (elf32_arm_filter_implib_symbols): Assert that the import
+	library is a relocatable object file.
+
 2017-05-01  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
 
 	PR ld/21404
diff --git a/bfd/aout-adobe.c b/bfd/aout-adobe.c
index d47dd20..a2c927d 100644
--- a/bfd/aout-adobe.c
+++ b/bfd/aout-adobe.c
@@ -474,6 +474,7 @@ aout_adobe_sizeof_headers (bfd *ignore_abfd ATTRIBUTE_UNUSED,
 #define aout_32_bfd_final_link		            _bfd_generic_final_link
 #define aout_32_bfd_link_split_section	            _bfd_generic_link_split_section
 #define aout_32_bfd_link_check_relocs               _bfd_generic_link_check_relocs
+#define aout_32_set_reloc			    _bfd_generic_set_reloc
 
 const bfd_target aout_adobe_vec =
 {
diff --git a/bfd/aout-target.h b/bfd/aout-target.h
index 9f77c95..2e98c4d 100644
--- a/bfd/aout-target.h
+++ b/bfd/aout-target.h
@@ -450,6 +450,9 @@ MY_bfd_final_link (bfd *abfd, struct bfd_link_info *info)
 #ifndef MY_canonicalize_reloc
 #define MY_canonicalize_reloc NAME (aout, canonicalize_reloc)
 #endif
+#ifndef MY_set_reloc
+#define MY_set_reloc _bfd_generic_set_reloc
+#endif
 #ifndef MY_make_empty_symbol
 #define MY_make_empty_symbol NAME (aout, make_empty_symbol)
 #endif
diff --git a/bfd/aout-tic30.c b/bfd/aout-tic30.c
index 29dad9f..5db3da7 100644
--- a/bfd/aout-tic30.c
+++ b/bfd/aout-tic30.c
@@ -905,6 +905,9 @@ tic30_aout_set_arch_mach (bfd *abfd,
 #ifndef MY_canonicalize_reloc
 #define MY_canonicalize_reloc NAME (aout, canonicalize_reloc)
 #endif
+#ifndef MY_set_reloc
+#define MY_set_reloc _bfd_generic_set_reloc
+#endif
 #ifndef MY_make_empty_symbol
 #define MY_make_empty_symbol NAME (aout, make_empty_symbol)
 #endif
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 17a35c0..8617881 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -7075,6 +7075,8 @@ long bfd_canonicalize_reloc
 void bfd_set_reloc
    (bfd *abfd, asection *sec, arelent **rel, unsigned int count);
 
+#define bfd_set_reloc(abfd, asect, location, count) \
+     BFD_SEND (abfd, _bfd_set_reloc, (abfd, asect, location, count))
 bfd_boolean bfd_set_file_flags (bfd *abfd, flagword flags);
 
 int bfd_get_arch_size (bfd *abfd);
@@ -7542,12 +7544,15 @@ typedef struct bfd_target
 #define BFD_JUMP_TABLE_RELOCS(NAME) \
   NAME##_get_reloc_upper_bound, \
   NAME##_canonicalize_reloc, \
+  NAME##_set_reloc, \
   NAME##_bfd_reloc_type_lookup, \
   NAME##_bfd_reloc_name_lookup
 
   long        (*_get_reloc_upper_bound) (bfd *, sec_ptr);
   long        (*_bfd_canonicalize_reloc)
     (bfd *, sec_ptr, arelent **, struct bfd_symbol **);
+  void        (*_bfd_set_reloc)
+    (bfd *, sec_ptr, arelent **, unsigned int);
   /* See documentation on reloc types.  */
   reloc_howto_type *
               (*reloc_type_lookup) (bfd *, bfd_reloc_code_real_type);
diff --git a/bfd/bfd.c b/bfd/bfd.c
index 23a4350..c6fce45 100644
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -1064,18 +1064,10 @@ DESCRIPTION
 	section @var{sec} to the values @var{rel} and @var{count}.
 	The argument @var{abfd} is ignored.
 
+.#define bfd_set_reloc(abfd, asect, location, count) \
+.     BFD_SEND (abfd, _bfd_set_reloc, (abfd, asect, location, count))
 */
 
-void
-bfd_set_reloc (bfd *ignore_abfd ATTRIBUTE_UNUSED,
-	       sec_ptr asect,
-	       arelent **location,
-	       unsigned int count)
-{
-  asect->orelocation = location;
-  asect->reloc_count = count;
-}
-
 /*
 FUNCTION
 	bfd_set_file_flags
diff --git a/bfd/bout.c b/bfd/bout.c
index 1d3bf66..0a6f8db 100644
--- a/bfd/bout.c
+++ b/bfd/bout.c
@@ -1392,6 +1392,7 @@ b_out_bfd_get_relocated_section_contents (bfd *output_bfd,
 #define b_out_bfd_define_common_symbol         bfd_generic_define_common_symbol
 #define aout_32_get_section_contents_in_window _bfd_generic_get_section_contents_in_window
 #define b_out_bfd_link_check_relocs            _bfd_generic_link_check_relocs
+#define b_out_set_reloc			       _bfd_generic_set_reloc
 
 extern const bfd_target bout_le_vec;
 
diff --git a/bfd/coff-alpha.c b/bfd/coff-alpha.c
index 9ce1975..8ecba2f 100644
--- a/bfd/coff-alpha.c
+++ b/bfd/coff-alpha.c
@@ -2342,6 +2342,9 @@ static const struct ecoff_backend_data alpha_ecoff_backend_data =
 #define _bfd_ecoff_bfd_define_common_symbol bfd_generic_define_common_symbol
 #define _bfd_ecoff_bfd_link_check_relocs    _bfd_generic_link_check_relocs
 
+/* Installing internal relocations in a section is also generic.  */
+#define _bfd_ecoff_set_reloc _bfd_generic_set_reloc
+
 const bfd_target alpha_ecoff_le_vec =
 {
   "ecoff-littlealpha",		/* name */
diff --git a/bfd/coff-mips.c b/bfd/coff-mips.c
index f872ebe..45c65f8 100644
--- a/bfd/coff-mips.c
+++ b/bfd/coff-mips.c
@@ -1356,6 +1356,7 @@ static const struct ecoff_backend_data mips_ecoff_backend_data =
 #define _bfd_ecoff_section_already_linked \
   _bfd_coff_section_already_linked
 #define _bfd_ecoff_bfd_define_common_symbol bfd_generic_define_common_symbol
+#define _bfd_ecoff_set_reloc _bfd_generic_set_reloc
 
 extern const bfd_target mips_ecoff_be_vec;
 
diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c
index e2b149b..b49e393 100644
--- a/bfd/coff-rs6000.c
+++ b/bfd/coff-rs6000.c
@@ -3993,6 +3993,7 @@ const struct xcoff_dwsect_name xcoff_dwsect_names[] = {
 /* For reloc entry points.  */
 #define _bfd_xcoff_get_reloc_upper_bound coff_get_reloc_upper_bound
 #define _bfd_xcoff_canonicalize_reloc coff_canonicalize_reloc
+#define _bfd_xcoff_set_reloc _bfd_generic_set_reloc
 #define _bfd_xcoff_bfd_reloc_type_lookup _bfd_xcoff_reloc_type_lookup
 #define _bfd_xcoff_bfd_reloc_name_lookup _bfd_xcoff_reloc_name_lookup
 
diff --git a/bfd/coff64-rs6000.c b/bfd/coff64-rs6000.c
index e919dcb..56458e0 100644
--- a/bfd/coff64-rs6000.c
+++ b/bfd/coff64-rs6000.c
@@ -2720,6 +2720,7 @@ const bfd_target rs6000_xcoff64_vec =
     /* Reloc */
     coff_get_reloc_upper_bound,
     coff_canonicalize_reloc,
+    _bfd_generic_set_reloc,
     xcoff64_reloc_type_lookup,
     xcoff64_reloc_name_lookup,
 
@@ -2979,6 +2980,7 @@ const bfd_target rs6000_xcoff64_aix_vec =
     /* Reloc */
     coff_get_reloc_upper_bound,
     coff_canonicalize_reloc,
+    _bfd_generic_set_reloc,
     xcoff64_reloc_type_lookup,
     xcoff64_reloc_name_lookup,
 
diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index 96a7886..f9d3978 100644
--- a/bfd/coffcode.h
+++ b/bfd/coffcode.h
@@ -5439,6 +5439,10 @@ coff_canonicalize_reloc (bfd * abfd,
   return section->reloc_count;
 }
 
+#ifndef coff_set_reloc
+#define coff_set_reloc _bfd_generic_set_reloc
+#endif
+
 #ifndef coff_reloc16_estimate
 #define coff_reloc16_estimate dummy_reloc16_estimate
 
diff --git a/bfd/elf-s390-common.c b/bfd/elf-s390-common.c
index 1570365..8795fb9 100644
--- a/bfd/elf-s390-common.c
+++ b/bfd/elf-s390-common.c
@@ -161,9 +161,7 @@ keep:
       h->type = STT_FUNC;
     }
 
-  /* We need dynamic relocation for STT_GNU_IFUNC symbol only when
-     there is a non-GOT reference in a shared object.  */
-  if (!bfd_link_pic (info) || !h->non_got_ref)
+  if (!bfd_link_pic (info))
     *head = NULL;
 
   /* Finally, allocate space.  */
diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
index 5f1505e..b00207e 100644
--- a/bfd/elf32-arc.c
+++ b/bfd/elf32-arc.c
@@ -29,6 +29,10 @@
 #include "opcode/arc.h"
 #include "arc-plt.h"
 
+#define FEATURE_LIST_NAME bfd_feature_list
+#define CONFLICT_LIST bfd_conflict_list
+#include "opcode/arc-attrs.h"
+
 /* #define ARC_ENABLE_DEBUG 1  */
 #ifdef ARC_ENABLE_DEBUG
 static const char *
@@ -442,8 +446,9 @@ arc_elf_print_private_bfd_data (bfd *abfd, void * ptr)
     case E_ARC_OSABI_ORIG : fprintf (file, " (ABI:legacy)"); break;
     case E_ARC_OSABI_V2   : fprintf (file, " (ABI:v2)");     break;
     case E_ARC_OSABI_V3   : fprintf (file, " (ABI:v3)");     break;
+    case E_ARC_OSABI_V4   : fprintf (file, " (ABI:v4)");     break;
     default:
-      fprintf (file, "(ABI:unknown)");
+      fprintf (file, " (ABI:unknown)");
       break;
     }
 
@@ -500,6 +505,301 @@ arc_info_to_howto_rel (bfd * abfd ATTRIBUTE_UNUSED,
   cache_ptr->howto = arc_elf_howto (r_type);
 }
 
+/* Extract CPU features from an NTBS.  */
+
+static unsigned
+arc_extract_features (const char *p)
+{
+  unsigned i, r = 0;
+
+  if (!p)
+    return 0;
+
+  for (i = 0; i < ARRAY_SIZE (bfd_feature_list); i++)
+    {
+      char *t = strstr (p, bfd_feature_list[i].attr);
+      unsigned l = strlen (bfd_feature_list[i].attr);
+      if ((t != NULL)
+	  && (t[l] == ','
+	      || t[l] == '\0'))
+	r |= bfd_feature_list[i].feature;
+    }


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


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

* [SCM]  users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread
@ 2017-05-07 20:22 jkratoch
  0 siblings, 0 replies; 7+ messages in thread
From: jkratoch @ 2017-05-07 20:22 UTC (permalink / raw)
  To: archer-commits

The branch, users/jkratoch/indexcxx-nameswrite-namesread has been updated
       via  be1ab5123a19ccec14ba6e580ba4b5d354160abc (commit)
       via  bea3feb07e43d6667acbbd1eeba28c3b7d6f5323 (commit)
       via  c94d10d4717ce8fe192d0152ce131771db89af4e (commit)
       via  a089940ea585bd0e7221539b3812929633a4b7ef (commit)
       via  bdbdd8567e59bc6d54749dbfcc001502fffe18a9 (commit)
       via  618a737b59008a0153f6454ae9a6d42814384828 (commit)
       via  e50f25ecdb24505bccb695e6c63add45f0032b9a (commit)
       via  21ea5acdd1bcfe89984b16b5bac730050c5cf05e (commit)
       via  7b937cba77df45962ced7e0e03802561beab549f (commit)
       via  7ed1acafa0b5d135342f9dcc0eb0387dff95005a (commit)
       via  e13cb306f099a8cd450c9fba0dfa22521aaa3c95 (commit)
       via  323449189c3474d1ab352b49172f4f59670ea73e (commit)
       via  d512d31c395e3c45f83778e01b9824efe45cac5f (commit)
       via  5ed8105e02d0c6648b7faea9f4e941237b932717 (commit)
       via  f6223dbb50b5d8780df633633adf0742c662173d (commit)
       via  3c3ae77e68a9032ef9f174bf6b1cc992b6a4cb35 (commit)
       via  f91d48deb29d9e6f4b530f586db0140943ed0d83 (commit)
       via  45eba0ab7d26435121facb68847fbd0cd4a313c1 (commit)
       via  b660e9eb7a45cfe99e719c5d16af35913a2fdc96 (commit)
       via  8293e73636484b403150ae94a93619779bcbae96 (commit)
       via  8507b6e79772ffeb83a0142d12a63e02dcc44562 (commit)
       via  90cef2edd256c48d2ff9a03d4a6c1bcb575db07c (commit)
       via  b22908217d8593185af3f76fab6f0f01457b0600 (commit)
       via  f81fdd350e688bd0216486b30884a52ebc4f32b8 (commit)
       via  35837774a77d641ba3ae75930a7b08ed853759ad (commit)
       via  c94fee56f5f8e5e26a115a1ca155ddada9d43b31 (commit)
       via  e78bb25cb636a331f27e9cc4cba5522939567695 (commit)
       via  35387fdec5e10b281c218c9dc4f3dc33c3fcc522 (commit)
       via  82d808edbc7a06f706b82064cec6c3ed88f0c4be (commit)
       via  3d8505928a06e00b05bb162c1ad0dd612c1c16af (commit)
       via  43e379d74c994fe431368b5f25f778bf601a2981 (commit)
       via  763a5fa4f330d6d3859c94a69ba1fcab09330cf9 (commit)
       via  640226f048b67d79da85742728e40114c9ee5da0 (commit)
       via  2ecf0cc317d065cfeb960c61688897351521bce0 (commit)
       via  d17f7b365cf3896b3129b9077d55b3154fc43131 (commit)
       via  b560ebd6605503276e09b2ef75c94e1d10f176f2 (commit)
       via  f2f46dfcdafe6bd32152d80b5e832d2fab4e6900 (commit)
       via  a0ff9e1ad221c11f58a9d8d12a84c21579132d85 (commit)
       via  ea480a306d46efe3dd1839618137f0e73a80e9b3 (commit)
       via  1395c6ce47510babad3dcb9892f6f2517a3f2b59 (commit)
       via  73ec947d59c511411377ad51ef792a5fcdd3f0cc (commit)
       via  a4ddc54ec1cd187c844ca631fe0315bf1d78e96f (commit)
       via  39ff1b79f687b65f4144ddb379f22587003443fb (commit)
       via  d050f7d7f474c7e3ba26902a9cbb185910921a11 (commit)
       via  14f819c8c5f7d080e5eea9256f0ec7453aac750e (commit)
       via  0ed5da759e34c6e85cb2a9ea0fdc7b680f897a81 (commit)
       via  913aeadd9d6b8bdea5131b16dc7ede395097656d (commit)
       via  a3be24ad59d683d1b08df28e093739743a7cf256 (commit)
       via  ae20e79ae852fee8f7d42701a54a95de3b79ecea (commit)
       via  8d0050ea192c41349c1f2b000866c1bdb761abeb (commit)
       via  fe50e98c9a22a89ca2e032b17aa7162452c3ad3b (commit)
       via  122a483d4f19c8b0a7f3d265dad882bd4f2c868a (commit)
       via  0aae7e72a2a11ef1fd2a3b4fd18c8d8d49e0c21b (commit)
       via  3f380b502769e55bbcdf7b9587c62344913c6ee8 (commit)
       via  ee7e95efb98186c09dc2c39b32263aa15b147bb0 (commit)
       via  6224c858130fe5c5e5d8b2abdec1cea35986d9e7 (commit)
       via  020bf56c8e55bfbe5a53989eac0c72b8d2416feb (commit)
      from  8fd75b5f6edf3f1ad68acb903efa092869f7b096 (commit)

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

- Log -----------------------------------------------------------------
commit be1ab5123a19ccec14ba6e580ba4b5d354160abc
Merge: c94d10d bea3feb
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun May 7 22:11:28 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

commit c94d10d4717ce8fe192d0152ce131771db89af4e
Merge: 8fd75b5 a089940
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Sun May 7 22:09:56 2017 +0200

    Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread

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

Summary of changes:
 bfd/ChangeLog                                      |   21 +
 bfd/config.bfd                                     |    3 +-
 bfd/elf32-avr.c                                    |   91 ++-
 bfd/elflink.c                                      |   12 +-
 bfd/version.h                                      |    2 +-
 binutils/ChangeLog                                 |   26 +
 binutils/objcopy.c                                 |   20 +-
 binutils/objdump.c                                 |    8 +
 .../testsuite/binutils-all/mips/mips16-undecoded.d |   20 +-
 gas/ChangeLog                                      |  185 ++++++
 gas/config/tc-mips.c                               |  319 +++++++++---
 gas/symbols.c                                      |   20 +-
 gas/testsuite/gas/mips/micromips@relax-swap3.d     |    1 -
 gas/testsuite/gas/mips/mips.exp                    |   66 +++
 gas/testsuite/gas/mips/mips16-branch-absolute-1.d  |   20 +
 gas/testsuite/gas/mips/mips16-branch-absolute-1.s  |   22 +
 gas/testsuite/gas/mips/mips16-branch-absolute-2.d  |    4 +
 gas/testsuite/gas/mips/mips16-branch-absolute-2.s  |   20 +
 .../gas/mips/mips16-branch-absolute-addend-1.d     |    4 +
 .../gas/mips/mips16-branch-absolute-addend-1.s     |   22 +
 .../gas/mips/mips16-branch-absolute-addend-n32-1.d |    5 +
 .../gas/mips/mips16-branch-absolute-addend-n64-1.d |    5 +
 .../gas/mips/mips16-branch-absolute-n32-1.d        |    5 +
 .../gas/mips/mips16-branch-absolute-n32-2.d        |    5 +
 .../gas/mips/mips16-branch-absolute-n64-1.d        |    5 +
 .../gas/mips/mips16-branch-absolute-n64-2.d        |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-0.d            |   47 ++
 gas/testsuite/gas/mips/mips16-pcrel-0.l            |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-0.s            |   39 ++
 gas/testsuite/gas/mips/mips16-pcrel-1.d            |   47 ++
 gas/testsuite/gas/mips/mips16-pcrel-1.l            |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-1.s            |   39 ++
 gas/testsuite/gas/mips/mips16-pcrel-2.d            |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-2.l            |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-2.s            |   43 ++
 gas/testsuite/gas/mips/mips16-pcrel-3.d            |    3 +
 gas/testsuite/gas/mips/mips16-pcrel-3.l            |    7 +
 gas/testsuite/gas/mips/mips16-pcrel-3.s            |   29 +
 gas/testsuite/gas/mips/mips16-pcrel-4.d            |    3 +
 gas/testsuite/gas/mips/mips16-pcrel-4.l            |   15 +
 gas/testsuite/gas/mips/mips16-pcrel-4.s            |   52 ++
 gas/testsuite/gas/mips/mips16-pcrel-5.d            |    3 +
 gas/testsuite/gas/mips/mips16-pcrel-5.l            |   15 +
 gas/testsuite/gas/mips/mips16-pcrel-5.s            |   54 ++
 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.d   |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.s   |   18 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.d   |   16 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.s   |   18 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.d   |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.s   |   18 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.d   |   34 ++
 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.l   |    9 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.s   |   24 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.d   |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.s   |   24 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.d   |   34 ++
 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.l   |    9 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.s   |   24 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.d   |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.s   |   24 +
 .../gas/mips/mips16-pcrel-absolute-n32-4.d         |    5 +
 .../gas/mips/mips16-pcrel-absolute-n32-6.d         |    5 +
 .../gas/mips/mips16-pcrel-absolute-n64-4.d         |    4 +
 .../gas/mips/mips16-pcrel-absolute-n64-6.d         |    4 +
 .../gas/mips/mips16-pcrel-absolute-n64-sym32-4.d   |    5 +
 .../gas/mips/mips16-pcrel-absolute-n64-sym32-6.d   |    5 +
 .../gas/mips/mips16-pcrel-absolute-pic-4.d         |    5 +
 .../gas/mips/mips16-pcrel-absolute-pic-6.d         |    5 +
 .../gas/mips/mips16-pcrel-absolute-pic-n32-4.d     |    5 +
 .../gas/mips/mips16-pcrel-absolute-pic-n32-6.d     |    5 +
 .../gas/mips/mips16-pcrel-absolute-pic-n64-4.d     |    4 +
 .../gas/mips/mips16-pcrel-absolute-pic-n64-6.d     |    4 +
 .../mips/mips16-pcrel-absolute-pic-n64-sym32-4.d   |    5 +
 .../mips/mips16-pcrel-absolute-pic-n64-sym32-6.d   |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-absolute.d     |   15 +-
 gas/testsuite/gas/mips/mips16-pcrel-absolute.l     |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-addend-2.d     |   20 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-2.l     |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-addend-3.d     |   19 +-
 gas/testsuite/gas/mips/mips16-pcrel-addend-3.l     |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-addend-4.d     |   13 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-4.s     |   25 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-5.d     |   13 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-5.s     |   25 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-6.d     |   21 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-6.s     |   26 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-7.d     |   20 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-7.s     |   16 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-8.d     |   50 ++
 gas/testsuite/gas/mips/mips16-pcrel-addend-8.l     |    9 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-8.s     |   22 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-9.d     |   50 ++
 gas/testsuite/gas/mips/mips16-pcrel-addend-9.l     |    9 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-9.s     |   22 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-8.d |   51 ++
 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-9.d |   51 ++
 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-8.d |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-9.d |    4 +
 .../gas/mips/mips16-pcrel-addend-n64-sym32-8.d     |   83 +++
 .../gas/mips/mips16-pcrel-addend-n64-sym32-9.d     |   83 +++
 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-8.d |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-9.d |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-delay-0.d      |   35 ++
 gas/testsuite/gas/mips/mips16-pcrel-delay-0.l      |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-delay-0.s      |   36 ++
 gas/testsuite/gas/mips/mips16-pcrel-delay-1.d      |   40 ++
 gas/testsuite/gas/mips/mips16-pcrel-delay-1.l      |    5 +
 gas/testsuite/gas/mips/mips16-pcrel-delay-1.s      |   35 ++
 gas/testsuite/gas/mips/mips16-pcrel-n32-0.d        |   48 ++
 gas/testsuite/gas/mips/mips16-pcrel-n32-1.d        |   48 ++
 gas/testsuite/gas/mips/mips16-pcrel-n64-0.d        |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-n64-1.d        |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d  |   64 +++
 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d  |   64 +++
 gas/testsuite/gas/mips/mips16-pcrel-pic-0.d        |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-pic-1.d        |    4 +
 gas/testsuite/gas/mips/mips16-pcrel-reloc-2.d      |   20 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-2.l      |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-reloc-3.d      |   19 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-3.l      |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-reloc-6.d      |   20 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-6.l      |    3 -
 gas/testsuite/gas/mips/mips16-pcrel-reloc-7.d      |   19 +-
 gas/testsuite/gas/mips/mips16-pcrel-reloc-7.l      |    3 -
 gas/testsuite/gas/mips/mips16@relax-swap3.d        |   23 +-
 gas/testsuite/gas/mips/mips16@relax-swap3.l        |    3 -
 gas/testsuite/gas/mips/mips16e@relax-swap3.d       |   21 +
 gas/testsuite/gas/mips/relax-swap3.s               |    6 +-
 gdb/ChangeLog                                      |  389 +++++++++++++
 gdb/MAINTAINERS                                    |   17 +-
 gdb/Makefile.in                                    |   29 +-
 gdb/aarch64-tdep.c                                 |   17 +-
 gdb/alpha-tdep.c                                   |   23 +-
 gdb/alpha-tdep.h                                   |    3 +-
 gdb/arch/arm-get-next-pcs.c                        |   89 ++--
 gdb/arch/arm-get-next-pcs.h                        |    5 +-
 gdb/arm-linux-tdep.c                               |   21 +-
 gdb/arm-tdep.c                                     |   30 +-
 gdb/arm-tdep.h                                     |    4 +-
 gdb/breakpoint.c                                   |  107 ++---
 gdb/btrace.c                                       |    9 +-
 gdb/common/gdb_vecs.h                              |    2 -
 gdb/config/aarch64/linux.mh                        |   29 -
 gdb/config/alpha/alpha-linux.mh                    |   15 -
 gdb/config/alpha/nbsd.mh                           |    4 -
 gdb/config/arm/linux.mh                            |   10 -
 gdb/config/arm/nbsdelf.mh                          |    2 -
 gdb/config/i386/cygwin.mh                          |    3 -
 gdb/config/i386/cygwin64.mh                        |   20 -
 gdb/config/i386/darwin.mh                          |    4 -
 gdb/config/i386/fbsd.mh                            |    8 -
 gdb/config/i386/fbsd64.mh                          |    7 -
 gdb/config/i386/go32.mh                            |   11 -
 gdb/config/i386/{i386gnu.mh => i386gnu.mn}         |   12 -
 gdb/config/i386/i386sol2.mh                        |    4 -
 gdb/config/i386/linux.mh                           |   14 -
 gdb/config/i386/linux64.mh                         |   15 -
 gdb/config/i386/mingw.mh                           |    3 -
 gdb/config/i386/mingw64.mh                         |    1 -
 gdb/config/i386/nbsd64.mh                          |    3 -
 gdb/config/i386/nbsdelf.mh                         |    5 -
 gdb/config/i386/nto.mh                             |    4 -
 gdb/config/i386/obsd.mh                            |    5 -
 gdb/config/i386/obsd64.mh                          |    5 -
 gdb/config/i386/sol2-64.mh                         |    4 -
 gdb/config/ia64/linux.mh                           |   13 -
 gdb/config/m32r/linux.mh                           |   10 -
 gdb/config/m68k/linux.mh                           |   14 -
 gdb/config/m68k/nbsdelf.mh                         |    4 -
 gdb/config/m68k/obsd.mh                            |    4 -
 gdb/config/m88k/obsd.mh                            |    2 -
 gdb/config/mips/fbsd.mh                            |    3 -
 gdb/config/mips/linux.mh                           |   11 -
 gdb/config/mips/nbsd.mh                            |    2 -
 gdb/config/mips/obsd64.mh                          |    2 -
 gdb/config/pa/linux.mh                             |   10 -
 gdb/config/pa/nbsd.mh                              |    2 -
 gdb/config/pa/obsd.mh                              |    2 -
 gdb/config/powerpc/aix.mh                          |    8 -
 gdb/config/powerpc/fbsd.mh                         |   24 -
 gdb/config/powerpc/linux.mh                        |   12 -
 gdb/config/powerpc/nbsd.mh                         |    4 -
 gdb/config/powerpc/obsd.mh                         |    4 -
 gdb/config/powerpc/ppc64-linux.mh                  |   15 -
 gdb/config/powerpc/spu-linux.mh                    |    8 -
 gdb/config/s390/linux.mh                           |    9 -
 gdb/config/sh/nbsd.mh                              |    2 -
 gdb/config/sparc/fbsd.mh                           |    7 -
 gdb/config/sparc/linux.mh                          |   13 -
 gdb/config/sparc/linux64.mh                        |   13 -
 gdb/config/sparc/nbsd64.mh                         |    5 -
 gdb/config/sparc/nbsdelf.mh                        |    5 -
 gdb/config/sparc/obsd64.mh                         |    5 -
 gdb/config/sparc/sol2.mh                           |    6 -
 gdb/config/tilegx/linux.mh                         |   13 -
 gdb/config/vax/nbsdelf.mh                          |    5 -
 gdb/config/vax/obsd.mh                             |    5 -
 gdb/config/xtensa/linux.mh                         |   11 -
 gdb/configure                                      |   43 +-
 gdb/configure.ac                                   |   37 +-
 gdb/configure.nat                                  |  484 ++++++++++++++++
 gdb/contrib/cc-with-tweaks.sh                      |   33 +-
 gdb/corelow.c                                      |   80 ++-
 gdb/cris-tdep.c                                    |    8 +-
 gdb/doc/ChangeLog                                  |   26 +
 gdb/doc/Makefile.in                                |    3 -
 gdb/doc/python.texi                                |  108 ++--
 gdb/exec.c                                         |   15 +-
 gdb/frv-linux-tdep.c                               |    7 +-
 gdb/gdbarch.c                                      |    2 +-
 gdb/gdbarch.h                                      |   11 +-
 gdb/gdbarch.sh                                     |  389 +++++++-------
 gdb/gdbserver/ChangeLog                            |   22 +
 gdb/gdbserver/configure                            |    4 +-
 gdb/gdbserver/linux-arm-low.c                      |    7 +-
 gdb/gdbserver/linux-low.c                          |    9 +-
 gdb/gdbserver/linux-low.h                          |    2 +-
 gdb/gdbthread.h                                    |   22 +-
 gdb/infcmd.c                                       |   31 +-
 gdb/inferior.c                                     |   29 +-
 gdb/inferior.h                                     |   23 +-
 gdb/infrun.c                                       |   65 ++-
 gdb/linespec.c                                     |    6 +-
 gdb/mi/mi-main.c                                   |   12 +-
 gdb/mips-tdep.c                                    |   57 +-
 gdb/mips-tdep.h                                    |    3 +-
 gdb/moxie-tdep.c                                   |   26 +-
 gdb/nios2-tdep.c                                   |    7 +-
 gdb/ppc-tdep.h                                     |    3 +-
 gdb/proc-service.c                                 |   18 +-
 gdb/progspace-and-thread.c                         |   43 ++
 gdb/progspace-and-thread.h                         |   40 ++
 gdb/progspace.c                                    |   80 +---
 gdb/progspace.h                                    |   32 +-
 gdb/python/py-instruction.c                        |   67 +++
 gdb/python/py-instruction.h                        |   30 +
 gdb/python/py-record-btrace.c                      |  596 ++++++++------------
 gdb/python/py-record-btrace.h                      |   42 ++
 gdb/python/py-record.c                             |  424 +++++++++++++-
 gdb/python/py-record.h                             |   74 +++
 gdb/python/python-internal.h                       |    2 +
 gdb/python/python.c                                |    1 +
 gdb/regcache.c                                     |   20 +
 gdb/regcache.h                                     |    2 +
 gdb/remote.c                                       |    5 +-
 gdb/rs6000-aix-tdep.c                              |   10 +-
 gdb/rs6000-tdep.c                                  |   15 +-
 gdb/s390-linux-tdep.c                              |   15 +-
 gdb/solib-target.c                                 |   61 +--
 gdb/sparc-tdep.c                                   |    8 +-
 gdb/spu-tdep.c                                     |    9 +-
 gdb/symtab.c                                       |   12 +-
 gdb/testsuite/ChangeLog                            |   29 +
 gdb/testsuite/gdb.cp/oranking.cc                   |   17 +
 .../gdb.python/py-record-btrace-threads.c          |   58 ++
 .../gdb.python/py-record-btrace-threads.exp        |   81 +++
 gdb/testsuite/gdb.python/py-record-btrace.exp      |    6 +-
 gdb/thread.c                                       |  249 ++++-----
 gdb/tic6x-tdep.c                                   |    7 +-
 gdb/tracepoint.c                                   |    6 +-
 gdb/varobj.c                                       |    5 +-
 gdb/warning.m4                                     |    2 +-
 ld/ChangeLog                                       |   79 +++
 ld/testsuite/ld-avr/pr21404-1.d                    |   12 +
 ld/testsuite/ld-avr/pr21404-1.s                    |   11 +
 ld/testsuite/ld-avr/pr21404-2.d                    |   16 +
 ld/testsuite/ld-avr/pr21404-2.s                    |   25 +
 ld/testsuite/ld-avr/pr21404-3.d                    |   10 +
 ld/testsuite/ld-avr/pr21404-3.s                    |   10 +
 ld/testsuite/ld-avr/pr21404-4.d                    |   10 +
 ld/testsuite/ld-avr/pr21404-4.s                    |   10 +
 ld/testsuite/ld-avr/pr21404-5.d                    |   11 +
 ld/testsuite/ld-avr/pr21404-5.s                    |    9 +
 ld/testsuite/ld-avr/pr21404-6.d                    |   16 +
 ld/testsuite/ld-avr/pr21404-6.s                    |   19 +
 ld/testsuite/ld-avr/pr21404-7.d                    |   10 +
 ld/testsuite/ld-avr/pr21404-7.s                    |    9 +
 ld/testsuite/ld-avr/pr21404-8.d                    |   10 +
 ld/testsuite/ld-avr/pr21404-8.s                    |    9 +
 ld/testsuite/ld-elf/pr21384.d                      |   12 +
 ld/testsuite/ld-elf/pr21384.dl                     |    4 +
 ld/testsuite/ld-elf/pr21384.ld                     |   22 +
 ld/testsuite/ld-elf/pr21384.s                      |    2 +
 ld/testsuite/ld-i386/tls.exp                       |    9 +-
 ld/testsuite/ld-mips-elf/mips-elf.exp              |   27 +
 .../ld-mips-elf/mips16-branch-absolute-1.d         |    6 +
 .../ld-mips-elf/mips16-branch-absolute-2.d         |    6 +
 .../ld-mips-elf/mips16-branch-absolute-addend-1.d  |    6 +
 .../mips16-branch-absolute-addend-n32-1.d          |    6 +
 .../mips16-branch-absolute-addend-n64-1.d          |    6 +
 .../ld-mips-elf/mips16-branch-absolute-n32-1.d     |    6 +
 .../ld-mips-elf/mips16-branch-absolute-n32-2.d     |    6 +
 .../ld-mips-elf/mips16-branch-absolute-n64-1.d     |    6 +
 .../ld-mips-elf/mips16-branch-absolute-n64-2.d     |    6 +
 ld/testsuite/ld-mips-elf/mips16-pcrel-0.d          |   41 ++
 ld/testsuite/ld-mips-elf/mips16-pcrel-1.d          |   41 ++
 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-2.d   |   19 +
 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-6.d   |   19 +
 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-0.d      |    6 +
 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-1.d      |    6 +
 .../ld-mips-elf/mips16-pcrel-n64-sym32-0.d         |    6 +
 .../ld-mips-elf/mips16-pcrel-n64-sym32-1.d         |    6 +
 ld/testsuite/ld-x86-64/tls.exp                     |    7 +-
 ld/testsuite/lib/ld-lib.exp                        |   64 +++
 opcodes/ChangeLog                                  |   18 +
 opcodes/arm-dis.c                                  |    4 +-
 opcodes/mips-dis.c                                 |    7 +-
 opcodes/riscv-dis.c                                |    1 +
 opcodes/riscv-opc.c                                |    2 +-
 309 files changed, 6290 insertions(+), 2062 deletions(-)
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-1.s
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-2.s
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-1.s
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-n32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-addend-n64-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n32-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n64-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-branch-absolute-n64-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-0.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-1.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-2.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-3.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-4.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-5.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-1.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-2.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-3.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-4.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-5.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-6.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-7.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n32-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute-pic-n64-sym32-6.d
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-absolute.l
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-2.l
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-3.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-4.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-4.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-5.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-5.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-6.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-6.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-7.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-7.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-8.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-9.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n32-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-8.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-addend-pic-9.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-0.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.l
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-delay-1.s
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n32-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-pic-0.d
 create mode 100644 gas/testsuite/gas/mips/mips16-pcrel-pic-1.d
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-2.l
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-3.l
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-6.l
 delete mode 100644 gas/testsuite/gas/mips/mips16-pcrel-reloc-7.l
 delete mode 100644 gas/testsuite/gas/mips/mips16@relax-swap3.l
 create mode 100644 gas/testsuite/gas/mips/mips16e@relax-swap3.d
 delete mode 100644 gdb/config/aarch64/linux.mh
 delete mode 100644 gdb/config/alpha/alpha-linux.mh
 delete mode 100644 gdb/config/alpha/nbsd.mh
 delete mode 100644 gdb/config/arm/linux.mh
 delete mode 100644 gdb/config/arm/nbsdelf.mh
 delete mode 100644 gdb/config/i386/cygwin.mh
 delete mode 100644 gdb/config/i386/cygwin64.mh
 delete mode 100644 gdb/config/i386/darwin.mh
 delete mode 100644 gdb/config/i386/fbsd.mh
 delete mode 100644 gdb/config/i386/fbsd64.mh
 delete mode 100644 gdb/config/i386/go32.mh
 rename gdb/config/i386/{i386gnu.mh => i386gnu.mn} (79%)
 delete mode 100644 gdb/config/i386/i386sol2.mh
 delete mode 100644 gdb/config/i386/linux.mh
 delete mode 100644 gdb/config/i386/linux64.mh
 delete mode 100644 gdb/config/i386/mingw.mh
 delete mode 100644 gdb/config/i386/mingw64.mh
 delete mode 100644 gdb/config/i386/nbsd64.mh
 delete mode 100644 gdb/config/i386/nbsdelf.mh
 delete mode 100644 gdb/config/i386/nto.mh
 delete mode 100644 gdb/config/i386/obsd.mh
 delete mode 100644 gdb/config/i386/obsd64.mh
 delete mode 100644 gdb/config/i386/sol2-64.mh
 delete mode 100644 gdb/config/ia64/linux.mh
 delete mode 100644 gdb/config/m32r/linux.mh
 delete mode 100644 gdb/config/m68k/linux.mh
 delete mode 100644 gdb/config/m68k/nbsdelf.mh
 delete mode 100644 gdb/config/m68k/obsd.mh
 delete mode 100644 gdb/config/m88k/obsd.mh
 delete mode 100644 gdb/config/mips/fbsd.mh
 delete mode 100644 gdb/config/mips/linux.mh
 delete mode 100644 gdb/config/mips/nbsd.mh
 delete mode 100644 gdb/config/mips/obsd64.mh
 delete mode 100644 gdb/config/pa/linux.mh
 delete mode 100644 gdb/config/pa/nbsd.mh
 delete mode 100644 gdb/config/pa/obsd.mh
 delete mode 100644 gdb/config/powerpc/aix.mh
 delete mode 100644 gdb/config/powerpc/fbsd.mh
 delete mode 100644 gdb/config/powerpc/linux.mh
 delete mode 100644 gdb/config/powerpc/nbsd.mh
 delete mode 100644 gdb/config/powerpc/obsd.mh
 delete mode 100644 gdb/config/powerpc/ppc64-linux.mh
 delete mode 100644 gdb/config/powerpc/spu-linux.mh
 delete mode 100644 gdb/config/s390/linux.mh
 delete mode 100644 gdb/config/sh/nbsd.mh
 delete mode 100644 gdb/config/sparc/fbsd.mh
 delete mode 100644 gdb/config/sparc/linux.mh
 delete mode 100644 gdb/config/sparc/linux64.mh
 delete mode 100644 gdb/config/sparc/nbsd64.mh
 delete mode 100644 gdb/config/sparc/nbsdelf.mh
 delete mode 100644 gdb/config/sparc/obsd64.mh
 delete mode 100644 gdb/config/sparc/sol2.mh
 delete mode 100644 gdb/config/tilegx/linux.mh
 delete mode 100644 gdb/config/vax/nbsdelf.mh
 delete mode 100644 gdb/config/vax/obsd.mh
 delete mode 100644 gdb/config/xtensa/linux.mh
 create mode 100644 gdb/configure.nat
 create mode 100644 gdb/progspace-and-thread.c
 create mode 100644 gdb/progspace-and-thread.h
 create mode 100644 gdb/python/py-instruction.c
 create mode 100644 gdb/python/py-instruction.h
 create mode 100644 gdb/python/py-record.h
 create mode 100644 gdb/testsuite/gdb.python/py-record-btrace-threads.c
 create mode 100644 gdb/testsuite/gdb.python/py-record-btrace-threads.exp
 create mode 100644 ld/testsuite/ld-avr/pr21404-1.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-1.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-2.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-2.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-3.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-3.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-4.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-4.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-5.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-5.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-6.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-6.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-7.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-7.s
 create mode 100644 ld/testsuite/ld-avr/pr21404-8.d
 create mode 100644 ld/testsuite/ld-avr/pr21404-8.s
 create mode 100644 ld/testsuite/ld-elf/pr21384.d
 create mode 100644 ld/testsuite/ld-elf/pr21384.dl
 create mode 100644 ld/testsuite/ld-elf/pr21384.ld
 create mode 100644 ld/testsuite/ld-elf/pr21384.s
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-2.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-n32-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-addend-n64-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n32-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n32-2.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n64-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-branch-absolute-n64-2.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-2.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-addend-6.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n32-1.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-0.d
 create mode 100644 ld/testsuite/ld-mips-elf/mips16-pcrel-n64-sym32-1.d

First 500 lines of diff:
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index dff6a59..27ac8c3 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,24 @@
+2017-05-01  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
+
+	PR ld/21404
+	* elf32-avr.c (avr_should_move_sym): New function.
+	(avr_should_reduce_sym_size): Likewise.
+	(avr_should_increase_sym_size): Likewise.
+	(elf32_avr_relax_delete_bytes): Adjust symbol values
+	and sizes by calling new functions.
+
+2017-05-01  Palmer Dabbelt  <palmer@dabbelt.com>
+
+	* config.bfd (riscv32-*): Enable rv64.
+
+2017-05-02  Alan Modra  <amodra@gmail.com>
+
+	PR 21384
+	* elflink.c (bfd_elf_link_mark_dynamic_symbol): Test h->non_elf
+	rather than h->root.type == bfd_link_hash_new.
+	(bfd_elf_record_link_assignment): Similarly, call
+	bfd_elf_link_mark_dynamic_symbol when h->non_elf.
+
 2017-04-29  Alan Modra  <amodra@gmail.com>
 
 	PR 21432
diff --git a/bfd/config.bfd b/bfd/config.bfd
index 151de95..eb6a958 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -1441,10 +1441,9 @@ case "${targ}" in
 #ifdef BFD64
   riscv32-*-*)
     targ_defvec=riscv_elf32_vec
-    targ_selvecs="riscv_elf32_vec"
+    targ_selvecs="riscv_elf32_vec riscv_elf64_vec"
     want64=true
     ;;
-
   riscv64-*-*)
     targ_defvec=riscv_elf64_vec
     targ_selvecs="riscv_elf32_vec riscv_elf64_vec"
diff --git a/bfd/elf32-avr.c b/bfd/elf32-avr.c
index 0f6c188..f140aa7 100644
--- a/bfd/elf32-avr.c
+++ b/bfd/elf32-avr.c
@@ -1854,6 +1854,40 @@ elf32_avr_adjust_reloc_if_spans_insn (bfd *abfd,
     }
 }
 
+static bfd_boolean
+avr_should_move_sym (symvalue symval,
+                     bfd_vma start,
+                     bfd_vma end,
+                     bfd_boolean did_pad)
+{
+  bfd_boolean sym_within_boundary =
+          did_pad ? symval < end : symval <= end;
+  return (symval > start && sym_within_boundary);
+}
+
+static bfd_boolean
+avr_should_reduce_sym_size (symvalue symval,
+                            symvalue symend,
+                            bfd_vma start,
+                            bfd_vma end,
+                            bfd_boolean did_pad)
+{
+  bfd_boolean sym_end_within_boundary =
+          did_pad ? symend < end : symend <= end;
+  return (symval <= start && symend > start && sym_end_within_boundary);
+}
+
+static bfd_boolean
+avr_should_increase_sym_size (symvalue symval,
+                              symvalue symend,
+                              bfd_vma start,
+                              bfd_vma end,
+                              bfd_boolean did_pad)
+{
+  return avr_should_move_sym (symval, start, end, did_pad)
+          && symend >= end && did_pad;
+}
+
 /* 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
@@ -1875,13 +1909,14 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
   Elf_Internal_Rela *irel, *irelend;
   Elf_Internal_Sym *isym;
   Elf_Internal_Sym *isymbuf = NULL;
-  bfd_vma toaddr, reloc_toaddr;
+  bfd_vma toaddr;
   struct elf_link_hash_entry **sym_hashes;
   struct elf_link_hash_entry **end_hashes;
   unsigned int symcount;
   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);
@@ -1912,17 +1947,6 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
         }
     }
 
-  /* We need to look at all relocs with offsets less than toaddr. prop
-     records handling adjusts toaddr downwards to avoid moving syms at the
-     address of the property record, but all relocs with offsets between addr
-     and the current value of toaddr need to have their offsets adjusted.
-     Assume addr = 0, toaddr = 4 and count = 2. After prop records handling,
-     toaddr becomes 2, but relocs with offsets 2 and 3 still need to be
-     adjusted (to 0 and 1 respectively), as the first 2 bytes are now gone.
-     So record the current value of toaddr here, and use it when adjusting
-     reloc offsets. */
-  reloc_toaddr = toaddr;
-
   irel = elf_section_data (sec)->relocs;
   irelend = irel + sec->reloc_count;
 
@@ -1962,10 +1986,7 @@ 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);
-
-      /* Adjust the TOADDR to avoid moving symbols located at the address
-         of the property record, which has not moved.  */
-      toaddr -= count;
+      did_pad = TRUE;
     }
 
   if (!did_shrink)
@@ -1981,7 +2002,7 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
 
       /* Get the new reloc address.  */
       if ((irel->r_offset > addr
-           && irel->r_offset < reloc_toaddr))
+           && irel->r_offset < toaddr))
         {
           if (debug_relax)
             printf ("Relocation at address 0x%x needs to be moved.\n"
@@ -2059,7 +2080,7 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
                  {
                    /* If there is an alignment boundary, we only need to
                       adjust addends that end up below the boundary. */
-                   bfd_vma shrink_boundary = (reloc_toaddr
+                   bfd_vma shrink_boundary = (toaddr
                                               + sec->output_section->vma
                                               + sec->output_offset);
 
@@ -2102,12 +2123,10 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
 	{
 	  if (isym->st_shndx == sec_shndx)
             {
-	      if (isym->st_value > addr
-                  && isym->st_value <= toaddr)
-                isym->st_value -= count;
-
-              if (isym->st_value <= addr
-                  && isym->st_value + isym->st_size > addr)
+              symvalue symval = isym->st_value;
+              symvalue symend = symval + isym->st_size;
+              if (avr_should_reduce_sym_size (symval, symend,
+                                      addr, toaddr, did_pad))
                 {
                   /* If this assert fires then we have a symbol that ends
                      part way through an instruction.  Does that make
@@ -2115,6 +2134,12 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
                   BFD_ASSERT (isym->st_value + isym->st_size >= addr + count);
                   isym->st_size -= count;
                 }
+              else if (avr_should_increase_sym_size (symval, symend,
+                                      addr, toaddr, did_pad))
+                isym->st_size += count;
+
+              if (avr_should_move_sym (symval, addr, toaddr, did_pad))
+                isym->st_value -= count;
             }
 	}
     }
@@ -2131,20 +2156,24 @@ elf32_avr_relax_delete_bytes (bfd *abfd,
            || sym_hash->root.type == bfd_link_hash_defweak)
           && sym_hash->root.u.def.section == sec)
         {
-          if (sym_hash->root.u.def.value > addr
-              && sym_hash->root.u.def.value <= toaddr)
-            sym_hash->root.u.def.value -= count;
+          symvalue symval = sym_hash->root.u.def.value;
+          symvalue symend = symval + sym_hash->size;
 
-          if (sym_hash->root.u.def.value <= addr
-              && (sym_hash->root.u.def.value + sym_hash->size > addr))
+          if (avr_should_reduce_sym_size (symval, symend,
+                                  addr, toaddr, did_pad))
             {
               /* If this assert fires then we have a symbol that ends
                  part way through an instruction.  Does that make
                  sense?  */
-              BFD_ASSERT (sym_hash->root.u.def.value + sym_hash->size
-                          >= addr + count);
+              BFD_ASSERT (symend >= addr + count);
               sym_hash->size -= count;
             }
+          else if (avr_should_increase_sym_size (symval, symend,
+                                  addr, toaddr, did_pad))
+              sym_hash->size += count;
+
+          if (avr_should_move_sym (symval, addr, toaddr, did_pad))
+            sym_hash->root.u.def.value -= count;
         }
     }
 
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 4af4b1c..9acc069 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -580,7 +580,7 @@ bfd_elf_link_mark_dynamic_symbol (struct bfd_link_info *info,
 	       && (ELF_ST_TYPE (sym->st_info) == STT_OBJECT
 		   || ELF_ST_TYPE (sym->st_info) == STT_COMMON))))
       || (d != NULL
-	  && h->root.type == bfd_link_hash_new
+	  && h->non_elf
 	  && (*d->match) (&d->head, NULL, h->root.root.string)))
     h->dynamic = 1;
 }
@@ -623,6 +623,14 @@ bfd_elf_record_link_assignment (bfd *output_bfd,
 	}
     }
 
+  /* Symbols defined in a linker script but not referenced anywhere
+     else will have non_elf set.  */
+  if (h->non_elf)
+    {
+      bfd_elf_link_mark_dynamic_symbol (info, h, NULL);
+      h->non_elf = 0;
+    }
+
   switch (h->root.type)
     {
     case bfd_link_hash_defined:
@@ -639,8 +647,6 @@ bfd_elf_record_link_assignment (bfd *output_bfd,
 	bfd_link_repair_undef_list (&htab->root);
       break;
     case bfd_link_hash_new:
-      bfd_elf_link_mark_dynamic_symbol (info, h, NULL);
-      h->non_elf = 0;
       break;
     case bfd_link_hash_indirect:
       /* We had a versioned symbol in a dynamic library.  We make the
diff --git a/bfd/version.h b/bfd/version.h
index a5c3e29..53986ea 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20170429
+#define BFD_VERSION_DATE 20170507
 #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 9eea3a0..b3a539a 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,29 @@
+2017-05-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
+	long when comparing with sec->reloc_count.
+
+2017-05-02  Nick Clifton  <nickc@redhat.com>
+
+	* objcopy.c (merge_gnu_build_notes): Disable merge if there are
+	more internal relocs than external relocs.
+
+2017-05-02  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
+	disassembly of PC-relative LA and LW synthetic instructions.
+
+2017-05-02  Nick Clifton  <nickc@redhat.com>
+
+	PR 21440
+	* objdump.c (dump_relocs_in_section): Check for an excessive
+	number of relocs before attempting to dump them.
+
+2017-05-01  Alan Modra  <amodra@gmail.com>
+
+	* objcopy.c (merge_gnu_build_notes): Correct code deleting
+	relocs.
+
 2017-04-28  Nick Clifton  <nickc@redhat.com>
 
 	PR binutils/21439
diff --git a/binutils/objcopy.c b/binutils/objcopy.c
index 9bad4b7..ccb5e12 100644
--- a/binutils/objcopy.c
+++ b/binutils/objcopy.c
@@ -2137,6 +2137,13 @@ merge_gnu_build_notes (bfd * abfd, asection * sec, bfd_size_type size, bfd_byte
 	    relcount = 0;
 	}
 
+      /* A few targets (eg MIPS, SPARC) create multiple internal relocs to
+	 represent a single external reloc.  Unfortunately the current BFD
+	 API does not handle deleting relocs in such situations very well
+	 and so it is unsafe to proceed.  */
+      if ((unsigned long) relcount > sec->reloc_count)
+	goto done;
+
       /* Eliminate the duplicates.  */
       new = new_contents = xmalloc (size);
       for (pnote = pnotes, old = contents;
@@ -2185,15 +2192,18 @@ merge_gnu_build_notes (bfd * abfd, asection * sec, bfd_size_type size, bfd_byte
 
       if (relcount > 0)
 	{
-	  arelent ** rel;
+	  arelent **rel = relpp;
 
-	  for (rel = relpp; rel < relpp + relcount; rel ++)
-	    if ((* rel)->howto == NULL)
+	  while (rel < relpp + relcount)
+	    if ((*rel)->howto != NULL)
+	      rel++;
+	    else
 	      {
 		/* Delete eliminated relocs.
 		   FIXME: There are better ways to do this.  */
-		memmove (rel, rel + 1, ((relcount - (rel - relpp)) - 1) * sizeof (* rel));
-		relcount --;
+		memmove (rel, rel + 1,
+			 ((relcount - (rel - relpp)) - 1) * sizeof (*rel));
+		relcount--;
 	      }
 	  bfd_set_reloc (abfd, sec, relpp, relcount);
 	}
diff --git a/binutils/objdump.c b/binutils/objdump.c
index bc61000..5972da1 100644
--- a/binutils/objdump.c
+++ b/binutils/objdump.c
@@ -3379,6 +3379,14 @@ dump_relocs_in_section (bfd *abfd,
       return;
     }
 
+  if ((bfd_get_file_flags (abfd) & (BFD_IN_MEMORY | BFD_LINKER_CREATED)) == 0
+      && relsize > get_file_size (bfd_get_filename (abfd)))
+    {
+      printf (" (too many: 0x%x)\n", section->reloc_count);
+      bfd_set_error (bfd_error_file_truncated);
+      bfd_fatal (bfd_get_filename (abfd));
+    }
+
   relpp = (arelent **) xmalloc (relsize);
   relcount = bfd_canonicalize_reloc (abfd, section, relpp, syms);
 
diff --git a/binutils/testsuite/binutils-all/mips/mips16-undecoded.d b/binutils/testsuite/binutils-all/mips/mips16-undecoded.d
index 42a5cdf..b455419 100644
--- a/binutils/testsuite/binutils-all/mips/mips16-undecoded.d
+++ b/binutils/testsuite/binutils-all/mips/mips16-undecoded.d
@@ -11,11 +11,11 @@ Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> f008 0231 	addiu	v0,sp,16401
 [0-9a-f]+ <[^>]*> f008 0251 	addiu	v0,sp,16401
 [0-9a-f]+ <[^>]*> f008 0291 	addiu	v0,sp,16401
-[0-9a-f]+ <[^>]*> f008 0a11 	la	v0,00004024 <foo\+0x4024>
-[0-9a-f]+ <[^>]*> f008 0a11 	la	v0,00004028 <foo\+0x4028>
-[0-9a-f]+ <[^>]*> f008 0a31 	la	v0,0000402c <foo\+0x402c>
-[0-9a-f]+ <[^>]*> f008 0a51 	la	v0,00004030 <foo\+0x4030>
-[0-9a-f]+ <[^>]*> f008 0a91 	la	v0,00004034 <foo\+0x4034>
+[0-9a-f]+ <[^>]*> f008 0a11 	la	v0,00004025 <foo\+0x4025>
+[0-9a-f]+ <[^>]*> f008 0a11 	la	v0,00004029 <foo\+0x4029>
+[0-9a-f]+ <[^>]*> f008 0a31 	la	v0,0000402d <foo\+0x402d>
+[0-9a-f]+ <[^>]*> f008 0a51 	la	v0,00004031 <foo\+0x4031>
+[0-9a-f]+ <[^>]*> f008 0a91 	la	v0,00004035 <foo\+0x4035>
 [0-9a-f]+ <[^>]*> f008 1011 	b	0000804e <foo\+0x804e>
 [0-9a-f]+ <[^>]*> f008 1011 	b	00008052 <foo\+0x8052>
 [0-9a-f]+ <[^>]*> f008 1031 	b	00008056 <foo\+0x8056>
@@ -64,11 +64,11 @@ Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> f008 9231 	lw	v0,16401\(sp\)
 [0-9a-f]+ <[^>]*> f008 9251 	lw	v0,16401\(sp\)
 [0-9a-f]+ <[^>]*> f008 9291 	lw	v0,16401\(sp\)
-[0-9a-f]+ <[^>]*> f008 b211 	lw	v0,000040f8 <foo\+0x40f8>
-[0-9a-f]+ <[^>]*> f008 b211 	lw	v0,000040fc <foo\+0x40fc>
-[0-9a-f]+ <[^>]*> f008 b231 	lw	v0,00004100 <foo\+0x4100>
-[0-9a-f]+ <[^>]*> f008 b251 	lw	v0,00004104 <foo\+0x4104>
-[0-9a-f]+ <[^>]*> f008 b291 	lw	v0,00004108 <foo\+0x4108>
+[0-9a-f]+ <[^>]*> f008 b211 	lw	v0,000040f9 <foo\+0x40f9>
+[0-9a-f]+ <[^>]*> f008 b211 	lw	v0,000040fd <foo\+0x40fd>
+[0-9a-f]+ <[^>]*> f008 b231 	lw	v0,00004101 <foo\+0x4101>
+[0-9a-f]+ <[^>]*> f008 b251 	lw	v0,00004105 <foo\+0x4105>
+[0-9a-f]+ <[^>]*> f008 b291 	lw	v0,00004109 <foo\+0x4109>
 [0-9a-f]+ <[^>]*> f008 d211 	sw	v0,16401\(sp\)
 [0-9a-f]+ <[^>]*> f008 d211 	sw	v0,16401\(sp\)
 [0-9a-f]+ <[^>]*> f008 d231 	sw	v0,16401\(sp\)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index d5849c0..37a0b9b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,188 @@
+2017-05-03  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* config/tc-mips.c (RELAX_MIPS16_ENCODE): Add `pic', `sym32' and
+	`nomacro' flags.
+	(RELAX_MIPS16_PIC, RELAX_MIPS16_SYM32, RELAX_MIPS16_NOMACRO):
+	New macros.
+	(RELAX_MIPS16_USER_SMALL, RELAX_MIPS16_USER_EXT)
+	(RELAX_MIPS16_DSLOT, RELAX_MIPS16_JAL_DSLOT)
+	(RELAX_MIPS16_EXTENDED, RELAX_MIPS16_MARK_EXTENDED)
+	(RELAX_MIPS16_CLEAR_EXTENDED, RELAX_MIPS16_ALWAYS_EXTENDED)
+	(RELAX_MIPS16_MARK_ALWAYS_EXTENDED)
+	(RELAX_MIPS16_CLEAR_ALWAYS_EXTENDED): Shift bits.
+	(RELAX_MIPS16_MACRO, RELAX_MIPS16_MARK_MACRO)
+	(RELAX_MIPS16_CLEAR_MACRO): New macros.
+	(append_insn): Pass `mips_pic', HAVE_32BIT_SYMBOLS and
+	`mips_opts.warn_about_macros' settings to RELAX_MIPS16_ENCODE.
+	(mips16_macro_frag): New function.
+	(md_estimate_size_before_relax): Handle HI16/LO16 relaxation.
+	(mips_relax_frag): Likewise.
+	(md_convert_frag): Likewise.
+
+	* testsuite/gas/mips/mips16@relax-swap3.d: Remove error output,
+	add dump patterns.
+	* testsuite/gas/mips/mips16e@relax-swap3.d: New test
+	subarchitecture.
+	* testsuite/gas/mips/micromips@relax-swap3.d: Remove trailing
+	NOP padding.
+	* testsuite/gas/mips/mips16-pcrel-reloc-2.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-reloc-3.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-reloc-6.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-reloc-7.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-addend-2.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-addend-3.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-absolute.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16-pcrel-absolute-1.d: Remove error
+	output, add dump patterns.
+	* testsuite/gas/mips/mips16@relax-swap3.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-reloc-2.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-reloc-3.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-reloc-6.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-reloc-7.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-addend-2.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-addend-3.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-absolute.l: Remove file.
+	* testsuite/gas/mips/mips16-pcrel-absolute-1.l: Remove file.
+	* testsuite/gas/mips/relax-swap3.s: Adjust trailing padding.
+
+	* testsuite/gas/mips/mips16-pcrel-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-2.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-3.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-5.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-pic-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-pic-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n32-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n32-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n64-sym32-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n64-sym32-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n64-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-n64-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-delay-0.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-delay-1.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-5.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-6.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-7.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-8.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-9.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-pic-8.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-pic-9.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n32-8.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n32-9.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-8.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n64-sym32-9.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n64-8.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-addend-n64-9.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-2.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-3.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-5.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-6.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-7.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-pic-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-pic-6.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n32-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n32-6.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n64-4.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n64-6.d: New test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-4.d: New
+	test.
+	* testsuite/gas/mips/mips16-pcrel-absolute-n64-sym32-6.d: New


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


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

end of thread, other threads:[~2017-05-24 20:35 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-21 17:31 [SCM] users/jkratoch/indexcxx-nameswrite-namesread: Merge branch 'indexcxx-nameswrite' into indexcxx-nameswrite-namesread jkratoch
  -- strict thread matches above, loose matches on Subject: below --
2017-05-24 20:35 jkratoch
2017-05-24  7:55 jkratoch
2017-05-24  7:39 jkratoch
2017-05-24  7:21 jkratoch
2017-05-15 14:49 jkratoch
2017-05-07 20:22 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).