public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  scox/gdbserver-multi-client: 016f5a3777ab6ce33616917be7795a7501f29dd7
@ 2017-11-07 19:38 scox
  0 siblings, 0 replies; only message in thread
From: scox @ 2017-11-07 19:38 UTC (permalink / raw)
  To: archer-commits

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 193027 bytes --]

The branch, scox/gdbserver-multi-client has been created
        at  016f5a3777ab6ce33616917be7795a7501f29dd7 (commit)

- Log -----------------------------------------------------------------
commit 016f5a3777ab6ce33616917be7795a7501f29dd7
Author: Jim Wilson <jimw@sifive.com>
Date:   Tue Nov 7 09:43:18 2017 -0800

    Fix typo in my email address.
    
    	binutils/
    	* MAINTAINERS (RISC-V): Fix typo in my email address.

commit 180093c76385b4037128109f452ce4a2414af124
Author: Palmer Dabbelt <palmer@sifive.com>
Date:   Mon Nov 6 17:53:12 2017 -0800

    RISC-V: Add Jim Wilson as a maintainer, and clean up our entries
    
    Jim has recently started working at SiFive, where he'll be contributing
    to our binutils port.  Andrew and I would like him to be a maintainer.
    My understanding is that this is right place to ask.
    
    I've also changed my address to my SiFive one, where I also work -- it
    seems cleaner to have everyone use our proper email address.  While I
    was in there, I noticed a trailing space after Andrew's name so I went
    ahead and removed it as well.
    
    binutils/ChangeLog
    
    2017-11-07  Palmer Dabbelt  <palmer@sifive.com>
    
            * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer.
            Clean up Andrew's entry (remove trailing space, add tabs).
            Change Palmer's email address, and clean up entry (add tabs).

commit f77bb6c56b4091ed863d8cd03333a79a8d554ce1
Author: Jim Wilson <jimw@sifive.com>
Date:   Mon Nov 6 16:32:08 2017 -0800

    RISC-V: Fix riscv g++ testsuite EH failures.
    
    This fixes some EH failures for the medany code model in the g++ testsuite.
    The problem is that the assembler is computing some values in the eh_frame
    section as constants, that instead should have had relocs to be resolved by
    the linker.  This happens in output_cfi_insn in the DW_CFA_advance_loc case
    where it compares label frags and immediately simplifies if they are the
    same.  We can fix that by forcing a new frag after every instruction
    that the linker can reduce in size.  I've also added a testcase to verify
    the fix.  This was tested with binutils make check, and gcc/g++ make checks on
    qemu for medlow and medany code models.
    
    	gas/
    	* config/tc-riscv.c (append_insn): Call frag_wane and frag_new at
    	end for linker optimizable relocs.
    	* testsuite/gas/riscv/eh-relocs.d: New.
    	* testsuite/gas/riscv/eh-relocs.s: New.
    	* testsuite/gas/riscv/riscv.exp: Run eh-relocs test.

commit 1270b047fdc68d89f05668ed919d17f5fceeba2a
Author: Palmer Dabbelt <palmer@dabbelt.com>
Date:   Mon Nov 6 13:22:42 2017 -0800

    RISC-V: Add satp as an alias for sptbr
    
    The RISC-V privileged ISA changed the name of sptbr (Supervisor Page
    Table Base Register) to satp (Supervisor Address Translation and
    Protection) to reflect the fact it could be used for more than just
    paging.  This patch adds an alias, as they're the same register.
    
    include/ChangeLog
    
    2017-11-06  Palmer Dabbelt  <palmer@dabbelt.com>
    
            * opcode/riscv-opc.h (sptbr): Rename to satp.
            (CSR_SPTBR): Rename to CSR_SATP.
            (sptbr): Alias to CSR_SATP.
    
    gas/ChangeLog
    
    2017-11-06  Palmer Dabbelt  <palmer@dabbelt.com>
    
            * testsuite/gas/riscv/satp.d: New test.
            testsuite/gas/riscv/satp.s: Likewise.
            testsuite/gas/riscv/riscv.exp: Likewise.
            config/tc-riscv.c (md_begin): Handle CSR aliases.

commit a02b41a7e604471e584dc2151fbd36714842710e
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Nov 7 11:16:09 2017 +0000

    Add some more breakpoint/location range tests
    
    Some extra thoroughness tests that I had over here.
    
    gdb/testsuite/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* gdb.cp/ena-dis-br-range.exp: Add more tests.

commit 95e95a6de2e4a050870c49bf52fbac0239847b63
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Nov 7 11:00:32 2017 +0000

    Make breakpoint/location number parsing error output consistent
    
    ... and also make GDB catch a few more cases of invalid input.
    
    This fixes the inconsistency in GDB's output (e.g., "bad" vs "Bad")
    exposed by the new tests added in the previous commit.
    
    Also, makes the "0-0" and "inverted range" cases be loud errors.
    
    Also makes GDB reject negative breakpoint number in ranges.  We
    already rejected negative number literals, but you could still subvert
    that via convenience variables, like:
    
      (gdb) set $bp -1
      (gdb) disable $bp.1-2
    
    The change to get_number_trailer fixes a bug exposed by the new tests.
    The function did not handle parsing "-$num".  [This wasn't visible in
    the gdb.multi/tids.exp (which has similar tests) because the TID range
    parsing is implemented differently.]
    
    gdb/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* breakpoint.c (extract_bp_kind): New enum.
    	(extract_bp_num, extract_bp_or_bp_range): New functions, partially
    	factored out from ...
    	(extract_bp_number_and_location): ... here.
    	* cli/cli-utils.c (get_number_trailer): Handle '-$variable'.
    
    gdb/testsuite/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/ena-dis-br.exp (test_ena_dis_br): Adjust test.
    	* gdb.cp/ena-dis-br-range.exp: Adjust tests.
    	(disable_invalid, disable_inverted, disable_negative): New
    	procedures.
    	("bad numbers"): New set of tests.

commit cee62dbd8771e22856d950c2615fb463305a9fcb
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Nov 7 11:00:31 2017 +0000

    Add base 'enable/disable invalid location range' tests
    
    This adds tests that exercise the "bad breakpoint number" paths.
    Specifically:
    
     - malformed ranges
     - use of explicit 0 as bp/loc number.
     - inverted ranges
    
    I'm adding this as a baseline to improve.  This shows that there's a
    lot of inconsistency in GDB's output (e.g., "bad" vs "Bad").
    
    Also, IMO, the "0-0" and inverted range cases should be loud errors.
    
    That and more will all be addressed in the next patch.
    
    gdb/testsuite/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* gdb.cp/ena-dis-br-range.exp: Add tests.

commit cc638e867c240546b4dbc791761099d3ca5fe4a9
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Nov 7 11:00:31 2017 +0000

    Breakpoint location parsing: always error instead of warning
    
    It's odd that when parsing a breakpoint or location number, we error out
    in most cases, but warn in others.
    
      (gdb) disable 1-
      bad breakpoint number at or near: '1-'
      (gdb) disable -1
      bad breakpoint number at or near: '-1'
      (gdb) disable .foo
      bad breakpoint number at or near: '.foo'
      (gdb) disable foo.1
      Bad breakpoint number 'foo.1'
      (gdb) disable 1.foo
      warning: bad breakpoint number at or near '1.foo'
    
    This changes GDB to always error out.  It required touching one testcase
    that expected the warning.
    
    gdb/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* breakpoint.c (extract_bp_number_and_location): Change return
    	type to void.  Throw error instead of warning.
    	(enable_disable_command): Adjust.
    
    gdb/testsuite/ChangeLog:
    2017-11-07  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/ena-dis-br.exp: Don't expect "warning:".

commit d0fe47010fc3289e081ba547a0bfcc6d07906cd2
Author: Xavier Roirand <roirand@adacore.com>
Date:   Tue Nov 7 11:00:31 2017 +0000

    Allow enabling/disabling breakpoint location ranges
    
    When a breakpoint has multiple locations, like e.g.:
    
     Num  Type       Disp Enb  Address    What
     1    breakpoint keep y    <MULTIPLE>
     1.1                  y    0x080486a2 in void foo<int>()...
     1.2                  y    0x080486ca in void foo<double>()...
     [....]
     1.5                  y    0x080487fa in void foo<long>()...
    
    it's possible to enable/disable the individual locations using the
    '<breakpoint_number>.<location_number>' syntax, like e.g.:
    
     (gdb) disable 1.2 1.3 1.4 1.5
    
    That's inconvenient when you have a long list of locations to disable,
    however.
    
    This patch adds shorthand for the above, by making it possible to
    specify a range of locations with the following syntax (similar to
    thread id ranges):
    
     <breakpoint_number>.<first_location_number>-<last_location_number>
    
    For example, the command above can now be simplified to:
    
     (gdb) disable 1.2-5
    
    gdb/ChangeLog:
    2017-11-07  Xavier Roirand  <roirand@adacore.com>
    	    Pedro Alves  <palves@redhat.com>
    
    	* breakpoint.c (map_breakpoint_number_range): New, factored out
    	from ...
    	(map_breakpoint_numbers): ... here.
    	(find_location_by_number): Change parameters from string to
    	breakpoint number and location.
    	(extract_bp_number_and_location): New function.
    	(enable_disable_bp_num_loc)
    	(enable_disable_breakpoint_location_range)
    	(enable_disable_command): New functions, factored out ...
    	(enable_command, disable_command): ... these functions, and
    	adjusted to support ranges.
    	* NEWS: Document enable/disable breakpoint location range feature.
    
    gdb/doc/ChangeLog:
    2017-11-07  Xavier Roirand  <roirand@adacore.com>
    	    Pedro Alves  <palves@redhat.com>
    
    	* gdb.texinfo (Set Breaks): Document support for breakpoint
    	location ranges in the enable/disable commands.
    
    gdb/testsuite/ChangeLog:
    2017-11-07  Xavier Roirand  <roirand@adacore.com>
    	    Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/ena-dis-br.exp: Add reference to
    	gdb.cp/ena-dis-br-range.exp.
    	* gdb.cp/ena-dis-br-range.exp: New file.
    	* gdb.cp/ena-dis-br-range.cc: New file.

commit 0198d5e6fc331d50dc19b7f250ac4bc510a8dbb5
Author: Tamar Christina <tamar.christina@arm.com>
Date:   Tue Nov 7 10:17:21 2017 +0000

    This patch similarly to the AArch64 one enables Dot Product support by default for the Cortex-A55 and Cortex-A75 which have hardware support for these instructions.
    
    gas	* config/tc-arm.c (arm_cpus):
    	Change FPU_ARCH_CRYPTO_NEON_VFP_ARMV8
    	into FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD.
    
    include	* opcode/arm.h (FPU_ARCH_CRYPTO_NEON_VFP_ARMV8_DOTPROD):
    	New macro.

commit db84fff3f888bb3e6d51ad24b6bfa2c6e2c3a206
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 6 15:21:53 2017 +1030

    PowerPC64 statistics message
    
    Fixes "linker stubs in 1 groups".
    
    	* elf64-ppc.c (ppc64_elf_build_stubs): Correct pluralization in
    	statistics message.

commit e54e9ac577591f53bd9552210b1062c6230030be
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Nov 7 16:32:07 2017 +1030

    bundle_lock message tidy
    
    I'd edited these thinking that there might be cases where the counts
    were one, but on further investigation it appears not.  What's left
    here are some minor tweaks.
    
    	* read.c (assemble_one, s_bundle_unlock): Formatting.
    	Consistently add comma and "bytes" to error message.
    	* testsuite/gas/i386/bundle-bad.l: Adjust to suit.

commit d3a49aa80b8a6eab1c684deddad3542c4cdaa497
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Nov 7 11:18:29 2017 +1030

    readelf ngettext fixes
    
    This patch is a first pass at fixing readelf message pluralization.
    I've deliberately not fixed the "out of memory" errors since it's very
    unlikely that they will ever be complaining about not being able to
    allocate for a single entry, and a few others where the size is very
    unlikely to be 1 byte.
    
    Then there are messages like this one:
    "Out of %lu items there are %zu bucket clashes (longest of %zu entries).\n"
    I suppose this could be split into three parts, "Of %lu items ",
    "there are %zu bucket clashes ", and "(longest of %zu entries).\n",
    each part being printed separately, but that might not be ideal for
    sentence construction in other languages.  For now I'm punting on this
    one.
    
    Changes to readelf output require lots of testsuite adjustment..
    
    binutils/
    	* dwarf.c (read_uleb128): Properly pluralize messages.
    	(display_debug_lines_raw, display_debug_loc): Likewise.
    	(display_debug_names, process_cu_tu_index): Likewise.
    	* od-macho.c (dump_code_signature_superblob): Likewise.
    	* readelf.c (process_program_headers): Likewise.
    	(process_section_header, process_relocs): Likewise.
    	(hppa_process_unwind, arm_process_unwind): Likewise.
    	(process_dynamic_section, process_version_sections): Likewise.
    	(process_symbol_table, process_syminfo): Likewise.
    	(apply_relocations, process_mips_specific): Likewise.
    	(process_gnu_liblist, process_notes_at): Likewise.
    	(process_archive): Likewise.
    	* testsuite/binutils-all/dw2-1.W,
    	* testsuite/binutils-all/dw2-3.W,
    	* testsuite/binutils-all/dw2-3gabi.W,
    	* testsuite/binutils-all/dw5.S,
    	* testsuite/binutils-all/dw5.W,
    	* testsuite/binutils-all/i386/compressed-1a.d,
    	* testsuite/binutils-all/libdw2-compressedgabi.out,
    	* testsuite/binutils-all/objdump.W,
    	* testsuite/binutils-all/readelf.r,
    	* testsuite/binutils-all/readelf.r-64,
    	* testsuite/binutils-all/x86-64/compressed-1a.d: Update
    	for pluralization fixes.
    gas/
    	* testsuite/gas/arm/got_prel.d,
    	* testsuite/gas/elf/dwarf2-1.d,
    	* testsuite/gas/elf/dwarf2-2.d,
    	* testsuite/gas/elf/dwarf2-3.d,
    	* testsuite/gas/elf/dwarf2-5.d,
    	* testsuite/gas/elf/dwarf2-6.d,
    	* testsuite/gas/i386/debug1.d,
    	* testsuite/gas/i386/dw2-compress-1.d,
    	* testsuite/gas/i386/dw2-compress-3a.d,
    	* testsuite/gas/i386/dw2-compress-3b.d,
    	* testsuite/gas/i386/dw2-compressed-1.d,
    	* testsuite/gas/i386/dw2-compressed-3a.d,
    	* testsuite/gas/i386/dw2-compressed-3b.d,
    	* testsuite/gas/i386/ilp32/x86-64-localpic.d,
    	* testsuite/gas/i386/localpic.d,
    	* testsuite/gas/i386/x86-64-localpic.d,
    	* testsuite/gas/ia64/pr13167.d,
    	* testsuite/gas/mips/loc-swap-2.d,
    	* testsuite/gas/mips/loc-swap.d,
    	* testsuite/gas/mips/micromips@loc-swap-2.d,
    	* testsuite/gas/mips/micromips@loc-swap.d,
    	* testsuite/gas/mips/mips16-dwarf2-n32.d,
    	* testsuite/gas/mips/mips16-dwarf2.d,
    	* testsuite/gas/mips/mips16@loc-swap-2.d,
    	* testsuite/gas/mips/mips16@loc-swap.d,
    	* testsuite/gas/mips/mips16e@loc-swap.d,
    	* testsuite/gas/mmix/bspec-1.d,
    	* testsuite/gas/mmix/bspec-2.d,
    	* testsuite/gas/tic6x/unwind-1.d,
    	* testsuite/gas/tic6x/unwind-2.d,
    	* testsuite/gas/tic6x/unwind-3.d: Update for pluralization
    	fixes.
    ld/
    	* testsuite/ld-aarch64/ifunc-13.d,
    	* testsuite/ld-aarch64/ifunc-15.d,
    	* testsuite/ld-aarch64/ifunc-20.d,
    	* testsuite/ld-alpha/tlsbin.rd,
    	* testsuite/ld-alpha/tlspic.rd,
    	* testsuite/ld-arm/ifunc-3.rd,
    	* testsuite/ld-arm/ifunc-9.rd,
    	* testsuite/ld-arm/unwind-mix.d,
    	* testsuite/ld-arm/unwind-rel.d,
    	* testsuite/ld-cris/hiddef1.d,
    	* testsuite/ld-cris/libdso-13.d,
    	* testsuite/ld-cris/libdso-2.d,
    	* testsuite/ld-cris/pr16044.d,
    	* testsuite/ld-cris/tls-local-63.d,
    	* testsuite/ld-cris/tls-local-64.d,
    	* testsuite/ld-cris/tls-und-38.d,
    	* testsuite/ld-cris/tls-und-42.d,
    	* testsuite/ld-cris/tls-und-46.d,
    	* testsuite/ld-cris/tls-und-50.d,
    	* testsuite/ld-cris/weakref3.d,
    	* testsuite/ld-cris/weakref4.d,
    	* testsuite/ld-elf/comm-data2r.rd,
    	* testsuite/ld-elf/discard1.d,
    	* testsuite/ld-elf/discard2.d,
    	* testsuite/ld-elf/pr19539.d,
    	* testsuite/ld-elf/pr22374-1.r,
    	* testsuite/ld-elf/pr22374-2.r,
    	* testsuite/ld-i386/combreloc.d,
    	* testsuite/ld-i386/emit-relocs-nacl.rd,
    	* testsuite/ld-i386/emit-relocs.rd,
    	* testsuite/ld-i386/pr13302.d,
    	* testsuite/ld-i386/pr17709-nacl.rd,
    	* testsuite/ld-i386/pr17709.rd,
    	* testsuite/ld-i386/pr19539.d,
    	* testsuite/ld-i386/pr19615.d,
    	* testsuite/ld-i386/pr19636-1a.d,
    	* testsuite/ld-i386/pr19636-1e.d,
    	* testsuite/ld-i386/pr19636-1f.d,
    	* testsuite/ld-i386/pr19636-2a.d,
    	* testsuite/ld-i386/pr19636-2b.d,
    	* testsuite/ld-i386/pr19636-2d-nacl.d,
    	* testsuite/ld-i386/pr19636-2e-nacl.d,
    	* testsuite/ld-i386/pr19636-3a.d,
    	* testsuite/ld-i386/pr19636-3d.d,
    	* testsuite/ld-i386/pr19636-3e.d,
    	* testsuite/ld-i386/pr19636-4a.d,
    	* testsuite/ld-i386/pr19645.d,
    	* testsuite/ld-i386/pr19827-nacl.rd,
    	* testsuite/ld-i386/pr19827.rd,
    	* testsuite/ld-i386/pr20253-4a.d,
    	* testsuite/ld-i386/pr20253-4b.d,
    	* testsuite/ld-i386/pr20253-5.d,
    	* testsuite/ld-i386/tlsbin-nacl.rd,
    	* testsuite/ld-i386/tlsbin.rd,
    	* testsuite/ld-i386/tlspic-nacl.rd,
    	* testsuite/ld-i386/tlspic.rd,
    	* testsuite/ld-i386/undefweakb.d,
    	* testsuite/ld-ia64/tlsbin.rd,
    	* testsuite/ld-ia64/tlspic.rd,
    	* testsuite/ld-ifunc/ifunc-13-i386.d,
    	* testsuite/ld-ifunc/ifunc-13-x86-64.d,
    	* testsuite/ld-ifunc/ifunc-15-i386.d,
    	* testsuite/ld-ifunc/ifunc-15-x86-64.d,
    	* testsuite/ld-ifunc/ifunc-20-i386.d,
    	* testsuite/ld-ifunc/ifunc-20-x86-64.d,
    	* testsuite/ld-ifunc/ifunc-23a-x86.d,
    	* testsuite/ld-ifunc/ifunc-23b-x86.d,
    	* testsuite/ld-ifunc/ifunc-23c-x86.d,
    	* testsuite/ld-ifunc/ifunc-24a-x86.d,
    	* testsuite/ld-ifunc/ifunc-24b-x86.d,
    	* testsuite/ld-ifunc/ifunc-24c-x86.d,
    	* testsuite/ld-ifunc/ifunc-25a-x86.d,
    	* testsuite/ld-ifunc/ifunc-25b-x86.d,
    	* testsuite/ld-ifunc/ifunc-25c-x86.d,
    	* testsuite/ld-m68k/got-1.d,
    	* testsuite/ld-mips-elf/vxworks1.rd,
    	* testsuite/ld-powerpc/ambiguousv1.d,
    	* testsuite/ld-powerpc/ambiguousv1b.d,
    	* testsuite/ld-powerpc/ambiguousv2.d,
    	* testsuite/ld-powerpc/ambiguousv2b.d,
    	* testsuite/ld-powerpc/tlsexe.r,
    	* testsuite/ld-powerpc/tlsexe32.r,
    	* testsuite/ld-powerpc/tlsexetoc.r,
    	* testsuite/ld-powerpc/tlsso.r,
    	* testsuite/ld-powerpc/tlsso32.r,
    	* testsuite/ld-powerpc/tlstocso.r,
    	* testsuite/ld-powerpc/vle-multiseg-1.d,
    	* testsuite/ld-powerpc/vle-multiseg-2.d,
    	* testsuite/ld-powerpc/vle-multiseg-3.d,
    	* testsuite/ld-s390/tlsbin.rd,
    	* testsuite/ld-s390/tlsbin_64.rd,
    	* testsuite/ld-s390/tlspic.rd,
    	* testsuite/ld-s390/tlspic_64.rd,
    	* testsuite/ld-sh/ld-r-1.d,
    	* testsuite/ld-sh/sh64/gotplt.d,
    	* testsuite/ld-sh/shared-1.d,
    	* testsuite/ld-sh/tlsbin-2.d,
    	* testsuite/ld-sh/tlspic-2.d,
    	* testsuite/ld-sparc/gotop32.rd,
    	* testsuite/ld-sparc/gotop64.rd,
    	* testsuite/ld-sparc/tlssunpic32.rd,
    	* testsuite/ld-sparc/tlssunpic64.rd,
    	* testsuite/ld-sparc/vxworks1-lib.rd,
    	* testsuite/ld-tic6x/shlib-app-1.rd,
    	* testsuite/ld-tic6x/shlib-app-1b.rd,
    	* testsuite/ld-tic6x/shlib-app-1r.rd,
    	* testsuite/ld-tic6x/shlib-app-1rb.rd,
    	* testsuite/ld-tic6x/shlib-noindex.rd,
    	* testsuite/ld-vax-elf/export-class-data.rd,
    	* testsuite/ld-x86-64/pr13082-1a.d,
    	* testsuite/ld-x86-64/pr13082-1b.d,
    	* testsuite/ld-x86-64/pr13082-2a.d,
    	* testsuite/ld-x86-64/pr13082-2b.d,
    	* testsuite/ld-x86-64/pr13082-3a.d,
    	* testsuite/ld-x86-64/pr13082-3c.d,
    	* testsuite/ld-x86-64/pr13082-4a.d,
    	* testsuite/ld-x86-64/pr13082-5a.d,
    	* testsuite/ld-x86-64/pr13082-5b.d,
    	* testsuite/ld-x86-64/pr13082-6a.d,
    	* testsuite/ld-x86-64/pr13082-6b.d,
    	* testsuite/ld-x86-64/pr17709-nacl.rd,
    	* testsuite/ld-x86-64/pr17709.rd,
    	* testsuite/ld-x86-64/pr19539a.d,
    	* testsuite/ld-x86-64/pr19539b.d,
    	* testsuite/ld-x86-64/pr19615.d,
    	* testsuite/ld-x86-64/pr19636-1a.d,
    	* testsuite/ld-x86-64/pr19636-1d.d,
    	* testsuite/ld-x86-64/pr19636-1e.d,
    	* testsuite/ld-x86-64/pr19636-2a.d,
    	* testsuite/ld-x86-64/pr19636-2e.d,
    	* testsuite/ld-x86-64/pr19636-2f.d,
    	* testsuite/ld-x86-64/pr19636-3a.d,
    	* testsuite/ld-x86-64/pr19645.d,
    	* testsuite/ld-x86-64/pr19807-2b.d,
    	* testsuite/ld-x86-64/pr19807-2d.d,
    	* testsuite/ld-x86-64/pr19827-nacl.rd,
    	* testsuite/ld-x86-64/pr19827.rd,
    	* testsuite/ld-x86-64/pr20253-4a.d,
    	* testsuite/ld-x86-64/pr20253-4b.d,
    	* testsuite/ld-x86-64/pr20253-4d.d,
    	* testsuite/ld-x86-64/pr20253-4e.d,
    	* testsuite/ld-x86-64/pr20253-5a.d,
    	* testsuite/ld-x86-64/pr20253-5b.d,
    	* testsuite/ld-x86-64/tlsbin-nacl.rd,
    	* testsuite/ld-x86-64/tlsbin.rd,
    	* testsuite/ld-x86-64/tlspic-nacl.rd,
    	* testsuite/ld-x86-64/tlspic.rd,
    	* testsuite/ld-x86-64/tlspic2-nacl.rd: Update for
    	pluralization fixes.

commit 992a06eea4acfb674659a0ce19b5fb9c985e9bc1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 6 19:44:02 2017 +1030

    gas and ld pluralization fixes
    
    gas/
    	* as.c (main): Properly pluralize messages.
    	* frags.c (frag_grow): Likewise.
    	* read.c (emit_expr_with_reloc, emit_expr_fix): Likewise.
    	(parse_bitfield_cons): Likewise.
    	* write.c (fixup_segment, compress_debug, write_contents): Likewise.
    	(relax_segment): Likewise.
    	* config/tc-arm.c (s_arm_elf_cons): Likewise.
    	* config/tc-cr16.c (l_cons): Likewise.
    	* config/tc-i370.c (i370_elf_cons): Likewise.
    	* config/tc-m68k.c (m68k_elf_cons): Likewise.
    	* config/tc-msp430.c (msp430_operands): Likewise.
    	* config/tc-s390.c (s390_elf_cons, s390_literals): Likewise.
    	* config/tc-mcore.c (md_apply_fix): Likewise.
    	* config/tc-tic54x.c (md_assemble): Likewise.
    	* config/tc-xtensa.c (xtensa_elf_cons): Likewise.
    	(xg_expand_assembly_insn): Likewise.
    	* config/xtensa-relax.c (build_transition): Likewise.
    ld/
    	* ldlang.c (lang_size_sections_1): Properly pluralize messages.
    	(lang_check_section_addresses): Likewise.

commit f3ce9b3a00229e5c6087180a74bf533d0e5201f3
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 6 21:30:12 2017 +1030

    Require ngettext in test of system gettext implementation
    
    If binutils is going to use ngettext, then we'd better arrange for
    intl/ to be compiled if the system gettext lacks ngettext.
    
    	* configure.ac: Invole AM_GNU_GETTEXT with need_ngettext.
    	* configure: Regenerate.
    	* aclocal.m4: Regenerate.

commit 6003e27e764ff62c1269a3ac6b5806b3fa3a1740
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 6 15:20:00 2017 +1030

    ngettext support
    
    binutils has lacked proper pluralization of output messages for a long
    time, for example, readelf will display information about a section
    that "contains 1 entries" or "There are 1 section headers".  Fixing
    this properly requires us to use ngettext, because other languages
    have different rules to English.
    
    This patch defines macros for ngettext and friends to handle builds
    with --disable-nls, and tidies the existing nls support.  I've
    redefined gettext rather than just defining "_" as dgettext in bfd and
    opcodes in case someone wants to use gettext there (which might
    conceivably happen with generated code).
    
    bfd/
    	* sysdep.h: Formatting, comment fixes.
    	(gettext, ngettext): Redefine when ENABLE_NLS.
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    	(_): Define using gettext.
    	(textdomain, bindtextdomain): Use safer "do nothing".
    	* hosts/alphavms.h (textdomain, bindtextdomain): Likewise.
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    opcodes/
    	* opintl.h: Formatting, comment fixes.
    	(gettext, ngettext): Redefine when ENABLE_NLS.
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    	(_): Define using gettext.
    	(textdomain, bindtextdomain): Use safer "do nothing".
    binutils/
    	* sysdep.h (textdomain, bindtextdomain): Use safer "do nothing".
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    gas/
    	* asintl.h (textdomain, bindtextdomain): Use safer "do nothing".
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    gold/
    	* system.h (textdomain, bindtextdomain): Use safer "do nothing".
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
    ld/
    	* ld.h (textdomain, bindtextdomain): Use safer "do nothing".
    	(ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.

commit 84d5321fdfdc5c086734f441fb31fa9ace2e86aa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Nov 7 00:00:21 2017 +0000

    Automatic date update in version.in

commit 635dc5b2e5cda5b18d32c4b0f6c19cba3ef05c67
Author: Luis Machado <luis.machado@linaro.org>
Date:   Mon Nov 6 15:39:09 2017 -0200

    Update my e-mail address.
    
    gdb/ChangeLog:
    2017-11-06  Luis Machado  <luis.machado@linaro.org>
    
    	* MAINTAINERS (Write After Approval): Update my e-mail address.

commit 556e5da51349d00307bc05b7a6a813f71ac58664
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 15:36:47 2017 +0000

    Simplify child_terminal_inferior
    
    The comment about Lynx in child_terminal_init reads a bit odd, since
    it's not exactly clear what "This" in "This is for Lynx" is referring
    to.  Looking back in history makes it clearer.  When the comment was
    originally added, in commit 91ecc8efa9b9, back in 1994, the code
    looked like this:
    
    ~~~
    #ifdef PROCESS_GROUP_TYPE
    #ifdef PIDGET
          /* This is for Lynx, and should be cleaned up by having Lynx be
             a separate debugging target with a version of
             target_terminal_init_inferior which passes in the process
             group to a generic routine which does all the work (and the
             non-threaded child_terminal_init_inferior can just pass in
             inferior_pid to the same routine).  */
          inferior_process_group = PIDGET (inferior_pid);
    #else
          inferior_process_group = inferior_pid;
    #endif
    #endif
    ~~~
    
    So this looked like it was about when GDB was growing support for
    multi-threading, and inferior_pid was still a single int for most
    ports.
    
    Eventually we got ptid_t, so the comment isn't really useful today.
    Particularly more so since we no longer support Lynx as a GDB host.
    
    The only caller left of child_terminal_init_with_pgrp is gnu-nat.c
    (the Hurd), and that target uses fork-child, so when we reach
    gnu_terminal_init after spawning a new child, the current inferior
    must already have the PID set, and the child must be a process group
    leader.
    
    We can't add a 'getpgid(inf->pid) == inf->pid' assertion to
    child_terminal_init though (like a previous version of this patch was
    doing [1]), because child_terminal_init is also reached after
    attaching to a process.  If we did, the new
    gdb.base/attach-non-pgrp-leader.exp test would fail, with:
    
      (gdb) attach 12415
      Attaching to program: build/gdb/testsuite/outputs/gdb.base/attach-non-pgrp-leader/attach-non-pgrp-leader, process 12415
      src/gdb/inflow.c:180: internal-error: void child_terminal_init(target_ops*): Assertion `getpgid (inf->pid) == inf->pid' failed.
      A problem internal to GDB has been detected,
      further debugging may prove unreliable.
      Quit this debugging session? (y or n) FAIL: gdb.base/attach-non-pgrp-leader.exp: child: attach to child (GDB internal error)
    
    I'm not making GDB save the pgid for attached processes with getpgid
    for now, because the saved process group affects other things which
    I'm leaving for following patches, like e.g., the "interrupt" command.
    
    [1] - https://sourceware.org/ml/gdb-patches/2017-11/msg00039.html
    
    gdb/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* gnu-nat.c (gnu_terminal_init): Delete.
    	(gnu_target): Don't install gnu_terminal_init.
    	* inflow.c (child_terminal_init_with_pgrp): Delete, merged with ...
    	(child_terminal_init): ... this function.

commit 46f67f80ddfeea11d4a8134b347c74581faff8f6
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 15:36:47 2017 +0000

    Test attaching to a process that isn't a process group leader
    
    The patch at
    <https://sourceware.org/ml/gdb-patches/2017-11/msg00039.html> was
    proposing to add an assertion to child_terminal_init that turns out
    would fail if you tried to attach to a process that isn't a process
    group leader.
    
    Since the testsuite failed to catch the problem, this commit adds a
    new testcase that would catch it, like:
    
      (gdb) attach 12415
      Attaching to program: build/gdb/testsuite/outputs/gdb.base/attach-non-pgrp-leader/attach-non-pgrp-leader, process 12415
      src/gdb/inflow.c:180: internal-error: void child_terminal_init(target_ops*): Assertion `getpgid (inf->pid) == inf->pid' failed.
      A problem internal to GDB has been detected,
      further debugging may prove unreliable.
      Quit this debugging session? (y or n) FAIL: gdb.base/attach-non-pgrp-leader.exp: child: attach to child (GDB internal error)
    
    gdb/testsuite/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/attach-non-pgrp-leader.c: New.
    	* gdb.base/attach-non-pgrp-leader.exp: New.

commit d1928160a324c1b6cd14afeecd4c81ab927883fa
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 16:19:12 2017 +0000

    Don't check termio.h and sgtty.h in common/common.m4 either
    
    common/common.m4 still had checks for termio.h/sgtty.h that are stale
    now.  Remove them.
    
    gdb/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* common/common.m4 (GDB_AC_COMMON): No longer check termio.h nor
    	sgtty.h.
    	* config.in, configure: Regenerate.
    
    gdb/gdbserver/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* config.in, configure: Regenerate.

commit 6aa899ce25d73c397748e4df926da3fd7e5870e5
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 15:36:47 2017 +0000

    Eliminate STOP_SIGNAL, use SIGTSTP directly
    
    The STOP_SIGNAL macro was originally added for Convex Unix
    (https://en.wikipedia.org/wiki/Convex_Computer).
    
    In:
    
      git show 7a67dd45ca1c:gdb/m-convex.h
    
    we see:
    
    ~~~
      /* Use SIGCONT rather than SIGTSTP because convex Unix occasionally
         turkeys SIGTSTP.  I think.  */
    
      #define STOP_SIGNAL SIGCONT
    ~~~
    
    That's gdb-3.5, 1990...  In gdb/ChangeLog-3.x we see:
    
    ~~~
    Tue Apr 18 13:43:37 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
    
            Various changes involved in 1) getting gdb to work on the convex,
    	[...]
            Made whatever signal indicates a stop configurable (via macro
            STOP_SIGNAL).
            (main): Setup use of above as a signal handler.  Added check for
            "-nw" in args already processed.
            (command_line_input): SIGTSTP ==>STOP_SIGNAL.
    ~~~
    
    Support for Convex Unix is long gone, and nothing else overrides
    STOP_SIGNAL.  So just use SIGTSTP directly, removing a little
    obfuscation.
    
    (I don't really understand why we override [1] readline's SIGTSTP
    handler (only) when reading scripts (and then fail to restore it
    properly, assuming SIG_DFL...), but I'll leave that for another pass.
    
    [1] - Actually, starting with readline 6.3, readline is no longer
    installing its handlers while GDB is in control...)
    
    gdb/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* event-top.c: Check SIGTSTP instead of STOP_SIGNAL thoughout.
    	(async_init_signals): Adjust.
    	(handle_stop_sig): Rename to ...
    	(handle_sigtstp): ... this.
    	(async_stop_sig): Rename to ...
    	(async_sigtstp_handler): ... this, and delete STOP_SIGNAL !=
    	SIGTSTP path.
    	* event-top.h: Move signal.h include to the top.  Check SIGTSTP
    	instead of STOP_SIGNAL thoughout.
    	(handle_stop_sig): Rename to ...
    	(handle_sigtstp): ... this.
    	* top.c (command_line_input): Replace STOP_SIGNAL -> SIGTSTP.

commit a94799ac1e430404fda5cbc181406cf5f3630108
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 15:36:46 2017 +0000

    Don't set terminal flags twice in a row
    
    I find this odd 'set flags twice' ancient code and comment annoyingly
    distracting.  It may well be that the reason for the double-set was
    simply a copy/paste mistake, and that we've been doing this for
    decades [1] for no good reason.  Let's just get rid of it, and if we
    find a real reason, add it back with a comment explaining why it's
    necessary.
    
    [1] This double-set was already in gdb 2.4 / 1988, the oldest release
    we have sources for, and imported in git.  From 'git show 7b4ac7e1ed2c
    inflow.c':
    
       +void
       +terminal_inferior ()
       +{
       +  if (terminal_is_ours)   /*  && inferior_thisrun_terminal == 0) */
       +    {
       +      fcntl (0, F_SETFL, tflags_inferior);
       +      fcntl (0, F_SETFL, tflags_inferior);
    
    The "is there a reason" comment was added in 1993, by:
    
      commit a88797b5eadf31e21804bc820429028bf708fbcd
      Author:     Fred Fish <fnf@specifix.com>
      AuthorDate: Thu Aug 5 01:33:45 1993 +0000
    
    gdb/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* inflow.c (child_terminal_inferior, child_terminal_ours_1): No
    	longer set flags twice in row.

commit 726e13564b615e5d8e9540b509623e58dfce2012
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Nov 6 15:36:46 2017 +0000

    Assume termios is available, remove support for termio and sgtty
    
    This commit garbage collects the termio and sgtty support.
    
    GDB's terminal handling code still has support for the old termio and
    sgtty interfaces in addition to termios.  However, I think it's pretty
    safe to assume that for a long, long time, Unix-like systems provide
    termios.  GNU/Linux, Solaris, Cygwin, AIX, DJGPP, macOS and the BSDs
    all have had termios.h for many years.  Looking around the web, I
    found discussions about FreeBSD folks trying to get rid of old sgtty.h
    a decade ago:
    
      https://lists.freebsd.org/pipermail/freebsd-hackers/2007-March/019983.html
    
    So I think support for termio and sgtty in GDB is just dead code that
    is never compiled anywhere and is just getting in the way.  For
    example, serial_noflush_set_tty_state and the raw<->cooked concerns
    mentioned in inflow.c only exist because of sgtty (see
    hardwire_noflush_set_tty_state).
    
    Regtested on GNU/Linux.
    
    Confirmed that I can still build Solaris, DJGPP and AIX GDB and that
    the resulting GDBs still include the termios.h-guarded code.
    Confirmed mingw-w64 GDB still builds and skips the termios.h-guarded
    code.
    
    gdb/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* Makefile.in (SER_HARDWIRE): Update comment.
    	(HFILES_NO_SRCDIR): Remove gdb_termios.h.
    	* common/gdb_termios.h: Delete file.
    	* common/job-control.c: Include termios.h and unistd.h instead of
    	gdb_termios.h.
    	(gdb_setpgid): Remove HAVE_TERMIOS || TIOCGPGRP preprocessor
    	check.
    	(have_job_control): Check HAVE_TERMIOS_H instead of HAVE_TERMIOS.
    	Remove sgtty code.
    	* configure.ac: No longer check for termio.h and sgtty.h.
    	* configure: Regenerate.
    	* inflow.c: Include termios.h instead of gdb_termios.h.  Replace
    	PROCESS_GROUP_TYPE checks with HAVE_TERMIOS_H checks throughout.
    	Replace PROCESS_GROUP_TYPE references with pid_t references
    	throughout.
    	(gdb_getpgrp): Delete.
    	(set_initial_gdb_ttystate): Use tcgetpgrp instead of gdb_getpgrp.
    	(child_terminal_inferior): Remove comment.  Remove sgtty code.
    	(child_terminal_ours_1): Use tcgetpgrp directly instead of
    	gdb_getpgrp.  Use serial_set_tty_state instead aof
    	serial_noflush_set_tty_state.  Remove sgtty code.
    	* inflow.h: Include unistd.h instead of gdb_termios.h.  Replace
    	PROCESS_GROUP_TYPE check with HAVE_TERMIOS_H check.
    	(inferior_process_group): Now returns pid_t.
    	* ser-base.c (ser_base_noflush_set_tty_state): Delete.
    	* ser-base.h (ser_base_noflush_set_tty_state): Delete.
    	* ser-event.c (serial_event_ops): Update.
    	* ser-go32.c (dos_noflush_set_tty_state): Delete.
    	(dos_ops): Update.
    	* ser-mingw.c (hardwire_ops, tty_ops, pipe_ops, tcp_ops): Update.
    	* ser-pipe.c (pipe_ops): Update.
    	* ser-tcp.c (tcp_ops): Update.
    	* ser-unix.c: Include termios.h instead of gdb_termios.h.  Remove
    	HAVE_TERMIOS checks.
    	[HAVE_TERMIO] (struct hardwire_ttystate): Delete.
    	[HAVE_SGTTY] (struct hardwire_ttystate): Delete.
    	(get_tty_state, set_tty_state): Drop termio and sgtty code, and
    	assume termios.
    	(hardwire_noflush_set_tty_state): Delete.
    	(hardwire_print_tty_state, hardwire_drain_output)
    	(hardwire_flush_output, hardwire_flush_input)
    	(hardwire_send_break, hardwire_raw, hardwire_setbaudrate)
    	(hardwire_setstopbits, hardwire_setparity): Drop termio and sgtty
    	code, and assume termios.
    	(hardwire_ops): Update.
    	(_initialize_ser_hardwire): Remove HAVE_TERMIOS check.
    	* serial.c (serial_noflush_set_tty_state): Delete.
    	* serial.h (serial_noflush_set_tty_state): Delete.
    	(serial_ops::noflush_set_tty_state): Delete.
    
    gdb/gdbserver/ChangeLog:
    2017-11-06  Pedro Alves  <palves@redhat.com>
    
    	* configure.ac: No longer check for termio.h and sgtty.h.
    	* configure: Regenerate.
    	* remote-utils.c: Include termios.h instead of gdb_termios.h.
    	(remote_open): Check HAVE_TERMIOS_H instead of HAVE_TERMIOS.
    	Remove termio and sgtty code.

commit 1cfb73dbb7503d1cfb088c14d1125a5030a1f386
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 16:04:03 2017 +0100

    Target FP: Merge doublest.c and dfp.c into target-float.c
    
    Now that all target FP operations are performed via target-float.c,
    this file remains the sole caller of functions in doublest.c and dfp.c.
    Therefore, this patch merges the latter files into the former and
    makes all their function static there.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* Makefile.in (SFILES): Remove doublest.c and dfp.c.
    	(HFILES_NO_SRCDIR): Remove doublest.h and dfp.h.
    	(COMMON_OBS): Remove doublest.o and dfp.o.
    	Do not build target-float.c (instead of doublest.c)
    	with -Wformat-nonliteral.
    
    	* doublest.c: Remove file.
    	* doublest.h: Remove file.
    	* dfp.c: Remove file.
    	* dfp.h: Remove file.
    
    	* target-float.c: Do not include "doublest.h" and "dfp.h".
    	(DOUBLEST): Move here from doublest.h.
    	(enum float_kind): Likewise.
    	(FLOATFORMAT_CHAR_BIT): Likewise.
    	(FLOATFORMAT_LARGEST_BYTES): Likewise.
    	(floatformat_totalsize_bytes): Move here from doublest.c.  Make static.
    	(floatformat_precision): Likewise.
    	(floatformat_normalize_byteorder, get_field, put_field): Likewise.
    	(floatformat_is_negative, floatformat_classify, floatformat_mantissa):
    	Likewise.
    	(host_float_format, host_double_format, host_long_double_format):
    	Likewise.
    	(floatformat_to_string, floatformat_from_string): Likewise.
    	(floatformat_to_doublest): Likewise.  Also, inline the original
    	convert_floatformat_to_doublest.
    	(floatformat_from_doublest): Likewise.  Also, inline the original
    	convert_floatformat_from_doublest.
    
    	Include "dpd/decimal128.h", "dpd/decimal64.h", and "dpd/decimal32.h".
    	(MAX_DECIMAL_STRING): Move here from dfp.c.
    	(match_endianness): Likewise.
    	(set_decnumber_context, decimal_check_errors): Likewise.
    	(decimal_from_number, decimal_to_number): Likewise.
    	(decimal_to_string, decimal_from_string): Likewise.  Make static.
    	(decimal_from_longest, decimal_from_ulongest): Likewise.
    	(decimal_to_longest): Likewise.
    	(decimal_binop, decimal_is_zero, decimal_compare): Likewise.
    	(decimal_convert): Likewise.

commit b07e9c466ed24af614090ac42d6730a291608f69
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 16:02:33 2017 +0100

    Target FP: Remove unused floating-point routines
    
    This patch removes the following routines, which now have no remaining
    users in GDB:
     - extract_typed_floating
     - store_typed_floating
     - convert_typed_floating
     - decimal_from_doublest
     - decimal_to_doublest
     - value_as_double
     - unpack_double
     - value_from_double
     - value_from_decfloat
    
    This completes removal of DOUBLEST from all files except doublest.{c,h}
    and target-float.c.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* doublest.c: Do not include "gdbtypes.h".
    	(extract_typed_floating): Remove.
    	(store_typed_floating): Remove.
    	(convert_typed_floating): Remove.
    	* doublest.h (struct type): Remove.
    	(DOUBLEST_PRINT_FORMAT): Remove.
    	(DOUBLEST_SCAN_FORMAT): Remove.
    	(extract_typed_floating): Remove.
    	(store_typed_floating): Remove.
    	(convert_typed_floating): Remove.
    
    	* dfp.c (decimal_from_doublest): Remove.
    	(decimal_to_doublest): Remove.
    	* dfp.h: Do not include "doublest.h".
    	(decimal_from_doublest): Remove.
    	(decimal_to_doublest): Remove.
    
    	* value.c: Do not include "doublest.h" and "dfp.h".
    	(value_as_double): Remove.
    	(unpack_double): Remove.
    	(value_from_double): Remove.
    	(value_from_decfloat): Remove.
    	* value.h: Do not include "doublest.h".
    	(value_as_double): Remove.
    	(unpack_double): Remove.
    	(value_from_double): Remove.
    	(value_from_decfloat): Remove.

commit 3b2ca8248cae742c00cb4e94138edf1403d43d47
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 16:01:37 2017 +0100

    Target FP: Remove convert_typed_floating from tdep files
    
    This patch mechanically replaces convert_typed_floating with the
    equivalent target_float_convert throughout tdep files, to prepare
    for the removal of doublest.{c,h}.
    
    No functional change intended.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* i386-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(i386_extract_return_value): Use target_float_convert.
    	(i386_store_return_value): Likewise.
    	* i387-tdep.c (i387_register_to_value): Use target_float_convert.
    	(i387_value_to_register): Likewise.
    	* ia64-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(ia64_register_to_value): Use target_float_convert.
    	(ia64_value_to_register): Likewise.
    	(ia64_extract_return_value): Likewise.
    	(ia64_store_return_value): Likewise.
    	(ia64_push_dummy_call): Likewise.
    	* m68k-tdep.c: Include "target-float.h".
    	(m68k_register_to_value): Use target_float_convert.
    	(m68k_value_to_register): Likewise.
    	(m68k_svr4_extract_return_value): Likewise.
    	(m68k_svr4_store_return_value): Likewise.
    	* ppc-sysv-tdep.c: Include "target-float.h".
    	(ppc_sysv_abi_push_dummy_call): Use target_float_convert.
    	(do_ppc_sysv_return_value): Likewise.
    	(ppc64_sysv_abi_push_freg): Likewise.
    	(ppc64_sysv_abi_return_value_base): Likewise.
    	* rs6000-aix-tdep.c: Include "target-float.h".
    	(rs6000_push_dummy_call): Use target_float_convert.
    	(rs6000_return_value): Likewise.
    	* rs6000-lynx178-tdep.c: Include "target-float.h".
    	(rs6000_lynx178_push_dummy_call): Use target_float_convert.
    	(rs6000_lynx178_return_value): Likewise.
    	* rs6000-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(rs6000_register_to_value): Use target_float_convert.
    	(rs6000_value_to_register): Likewise.
    	* arm-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(arm_extract_return_value): Use target_float_convert.
    	(arm_store_return_value): Likewise.
    	* sh-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(sh_register_convert_to_virtual): Use target_float_convert.
    	(sh_register_convert_to_raw): Likewise.
    	* sh64-tdep.c: Include "target-float.h".
    	(sh64_extract_return_value): Use target_float_convert.
    	(sh64_register_convert_to_virtual): Likewise.
    	(sh64_register_convert_to_raw): Likewise.  Fix argument types.

commit 14ad9311720fc17bd646b2ff08483fe60a489959
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 16:00:47 2017 +0100

    Target FP: Handle interfaces to scripting languages
    
    The last remaing use for DOUBLEST is in the code that interfaces to the
    scripting languages (Python and Guile).  The problem here is that we
    expose interfaces to convert a GDB value to and from native values of
    floating-point type in those languages, and those by definition use
    the host floating-point format.
    
    While we cannot completely eliminate conversions to/from the host
    floating-point format here, we still need to get rid of the uses
    of value_as_double / value_from_double, since those will go away.
    
    This patch implements two new target-float.c routine:
     - target_float_to_host_double
     - target_float_from_host_double
    which convert to/from a host "double".  Those should only ever be
    used where a host "double" is mandated by an external interface.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* target-float.c (floatformat_to_host_double): New function.
    	(floatformat_from_host_double): Likewise.
    	(target_float_to_host_double): Likewise.
    	(target_float_from_host_double): Likewise.
    	* target-float.h (target_float_to_host_double): Add prototype.
    	(target_float_from_host_double): Likewise.
    
    	* guile/scm-value.c: Include "target-float.h".
    	(gdbscm_value_to_real): Use target_float_to_host_double.
    	Handle integer source values via value_as_long.
    	* guile/scm-math.c: Include "target-float.h".  Do not include
    	"doublest.h", "dfp.h", and "expression.h".
    	(vlscm_convert_typed_number): Use target_float_from_host_double.
    	(vlscm_convert_number): Likewise.
    
    	* python/py-value.c (valpy_float): Use target_float_to_host_double.
    	(convert_value_from_python): Use target_float_from_host_double.

commit 50eff16b85073287b1b184a257a8fd80e960fe02
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 15:59:36 2017 +0100

    Target FP: Perform Ada fixed-point scaling in target format
    
    One of the few still remaining uses of DOUBLEST in GDB is the Ada front-end
    code that handles scaling of Ada fixed-point types.  The target format for
    those types is some integer format; to convert those values to standard
    floating-point representation, that integer needs to be multiplied by a
    rational scale factor, given as a pair of numerator and denominator.
    
    To avoid having to deal with long integer arithmetic, the current Ada
    front-end code currently performs those scaling operations in host
    DOUBLEST arithmetic.  To eliminate this use of DOUBLEST, this patch
    changes the front-end to instead perform those operations in the
    *target* floating-point format (chosing to use the target "long double").
    
    The implementation is mostly straight-forward, using value_cast and
    value_binop to perform the target operations.
    
    Scanning in the scale numerator and denominator is now done into
    a host "long long" instead of a DOUBLEST, which should be large
    enough to hold all possible values.  (Otherwise, this can be replaced
    by target-format target_float_from_string operations as well.)
    
    Printing fixed-point types and values should be completely unchanges,
    using target_float_to_string with the same format strings as current code.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* ada-lang.c (cast_to_fixed): Reimplement in target arithmetic.
    	(cast_from_fixed): Likewise.
    	(ada_scaling_type): New function.
    	(ada_delta): Return value instead of DOUBLEST.  Perform target
    	arithmetic instead of host arithmetic.
    	(scaling_factor): Rename to ...
    	(ada_scaling_factor) ... this.  Make non-static.  Return value instead
    	of DOUBLEST.  Perform target arithmetic instead of host arithmetic.
    	(ada_fixed_to_float): Remove.
    	(ada_float_to_fixed): Remove.
    	* ada-lang.h (ada_fixed_to_float): Remove.
    	(ada_float_to_fixed): Remove.
    	(ada_delta): Return value instead of DOUBLEST.
    	(ada_scaling_factor): Add prototype.
    
    	* ada-typeprint.c: Include "target-float.h".
    	(print_fixed_point_type): Perform target arithmetic instead of
    	host arithmetic.
    	* ada-valprint.c: Include "target-float.h".
    	(ada_val_print_num): Perform target arithmetic instead of
    	host arithmetic for fixed-point types.

commit 66c02b9ed1eabf1d7981c0c27ec9fd3c17fc5d35
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 15:58:46 2017 +0100

    Target FP: Add binop and compare routines to target-float.{c,h}
    
    This patch adds the following target floating-point routines:
     - target_float_binop
     - target_float_compare
    which call the equivalent decimal_ routines to handle decimal FP,
    and call helper routines that currently still go via DOUBLEST to
    handle binary FP (derived from current valarith.c code).
    
    These routines are used to handle both binary and decimal FP types
    in scalar_binop, value_equal, and value_less, mostly following the
    method currently used for decimal FP.  The existing value_args_as_decimal
    helper is renamed to value_args_as_target_float and extended to handle
    both binary and decimal types.
    
    The unary operations value_pos and value_neg are also simplified,
    the former by using a simple copy for all scalar types, the latter
    by using value_binop (... BINOP_SUB) to implement negation as
    subtraction from zero.
    
    ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* target-float.c: Include <math.h>.
    	(floatformat_binop): New function.
    	(floatformat_compare): Likewise.
    	(target_float_binop): Likewise.
    	(target_float_compare): Likewise.
    	* target-float.h: Include "expression.h".
    	(target_float_binop): Add prototype.
    	(target_float_compare): Likewise.
    
    	* valarith.c: Do not include "doublest.h" and "dfp.h".
    	Include "common/byte-vector.h".
    	(value_args_as_decimal): Remove, replace by ...
    	(value_args_as_target_float): ... this function.  Handle both
    	binary and decimal target floating-point formats.
    	(scalar_binop): Handle both binary and decimal FP using
    	value_args_as_target_float and target_float_binop.
    	(value_equal): Handle both binary and decimal FP using
    	value_args_as_target_float and target_float_compare.
    	(value_less): Likewise.
    	(value_pos): Handle all scalar types as simple copy.
    	(value_neg): Handle all scalar types via BINOP_SUB from 0.
    	* dfp.c (decimal_binop): Throw error instead of internal_error
    	when called with an unsupported operation code.

commit 50637b26f85dc3e59b616f1b01ca8885cf98f0b4
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 15:57:31 2017 +0100

    Target FP: Add conversion routines to target-float.{c,h}
    
    This patch adds the following conversion routines:
     - target_float_to_longest
     - target_float_from_longest
     - target_float_from_ulongest
     - target_float_convert
    which call the equivalent decimal_ routines to handle decimal FP,
    and call helper routines that currently still go via DOUBLEST to
    handle binary FP.
    
    The target_float_convert routine not only handles BFP<->BFP and
    DFP<->DFP conversions, but also BFP<->DFP, which are implemented
    by converting to a string and back.
    
    These helpers are used in particular to implement conversion
    from and to FP in value_cast, without going through DOUBLEST there.
    In order to implement this for the FP<-integer case, the
    pack_long / pack_unsigned_long routines are extended to support
    floating-point values as output (thereby allowing use of
    value_from_[u]longest with a floating-point target type).
    
    This latter change also allows simplification of value_one.
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* target-float.c (floatformat_to_longest): New function.
    	(floatformat_from_longest, floatformat_from_ulongest): Likewise.
    	(floatformat_convert): Likewise.
    	(target_float_to_longest): Likewise.
    	(target_float_from_longest, target_float_from_ulongest): Likewise.
    	(target_float_convert): Likewise.
    	* target-float.h (target_float_to_longest): Add prototype.
    	(target_float_from_longest, target_float_from_ulongest): Likewise.
    	(target_float_convert): Likewise.
    
    	* value.c (unpack_long): Use target_float_to_longest.
    	(pack_long): Allow FP types.  Use target_float_from_longest.
    	(pack_unsigned_long): Likewise using target_float_from_ulongest.
    	* valops.c: Include "target-float.h".  Do not include "dfp.h".
    	(value_cast): Handle conversions to FP using target_float_convert,
    	value_from_ulongest, and value_from_longest.
    	(value_one): Use value_from_longest for FP types as well.

commit f69fdf9bca80ac703890a51e124e408cbccbb743
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 15:56:35 2017 +0100

    Target FP: Add string routines to target-float.{c,h}
    
    This adds target_float_to_string and target_float_from_string,
    which dispatch to the corresponding floatformat_ or decimal_ routines.
    
    Existing users of those routines are changed to use the new
    target-float routines instead (most of those places already handle
    both binary and decimal FP).
    
    In addition, two other places are changes to use target_float_from_string:
    
    - define_symbol in stabsread.c, when parsing a floating-point literal
      from stabs debug info
    
    - gdbarch-selftest.c when initializing a target format values (to
      eliminate use of DOUBLEST there).
    
    gdb/ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* target-float.c (target_float_to_string): New function.
    	(target_float_from_string): New function.
    	* target-float.h (target_float_to_string): Add prototype.
    	(target_float_from_string): Add prototype.
    
    	* valprint.c: Include "target-float.h".  Do not include
    	"doublest.h" and "dfp.h".
    	(print_floating): Use target_float_to_string.
    	* printcmd.c: Include "target-float.h".  Do not include "dfp.h".
    	(printf_floating): Use target_float_to_string.
    	* i387-tdep.c: Include "target-float.h".  Do not include "doublest.h".
    	(print_i387_value): Use target_float_to_string.
    	* mips-tdep.c: Include "target-float.h".
    	(mips_print_fp_register): Use target_float_to_string.
    	* sh64-tdep.c: Include "target-float.h".
    	(sh64_do_fp_register): Use target_float_to_string.
    
    	* parse.c: Include "target-float.h".  Do not include
    	"doublest.h" and "dfp.h".
    	(parse_float): Use target_float_from_string.
    	* stabsread.c: Include "target-float.h".  Do not include "doublest.h".
    	(define_symbol): Use target_float_from_string.
    	* gdbarch-selftests.c: Include "target-float.h".
    	(register_to_value_test): Use target_float_from_string.

commit 701000146a01f1966c59f50d7b638915917b6378
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Mon Nov 6 15:55:11 2017 +0100

    Target FP: Introduce target-float.{c,h}
    
    This patch introduces the new set of target floating-point handling routines
    in target-float.{c,h}.  In the end, the intention is that this file will
    contain support for all operations in target FP format, fully replacing
    both the current doublest.{c,h} and dfp.{c,h}.
    
    To begin with, this patch only adds a target_float_is_zero routine,
    which handles the equivalent of decimal_is_zero for both binary and
    decimal FP.  For the binary case, to avoid conversion to DOUBLEST,
    this is implemented using the floatformat_classify routine.
    
    However, it turns out that floatformat_classify actually has a bug
    (it was not used to check for zero before), so this is fixed as well.
    
    The new routine is used in both value_logical_not and valpy_nonzero.
    
    There is one extra twist: the code previously used value_as_double
    to convert to DOUBLEST and then compare against zero.  That routine
    performs an extra task: it detects invalid floating-point values
    and raises an error.  In any place where value_as_double is removed
    in favor of some target-float.c routine, we need to replace that check.
    
    To keep this check centralized in one place, I've added a new routine
    is_floating_value, which returns a boolean determining whether a
    value's type is floating point (binary or decimal), and if so, also
    performs the validity check.  Since we need to check whether a value
    is FP before calling any of the target-float routines anyway, this
    seems a good place to add the check without much code size overhead.
    
    In some places where we only want to check for floating-point types
    and not perform a validity check (e.g. for the *output* of an operation),
    we can use the new is_floating_type routine (in gdbarch) instead.
    
    The validity check itself is done by a new target_float_is_valid
    routine in target-float, encapsulating floatformat_is_valid.
    
    ChangeLog:
    2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* Makefile.c (SFILES): Add target-float.c.
    	(HFILES_NO_SRCDIR): Add target-float.h.
    	(COMMON_OBS): Add target-float.o.
    	* target-float.h: New file.
    	* target-float.c: New file.
    
    	* doublest.c (floatformat_classify): Fix detection of float_zero.
    
    	* gdbtypes.c (is_floating_type): New function.
    	* gdbtypes.h (is_floating_type): Add prototype.
    
    	* value.c: Do not include "floatformat.h".
    	(unpack_double): Use target_float_is_valid.
    	(is_floating_value): New function.
    	* value.h (is_floating_value): Add prototype-
    
    	* valarith.c: Include "target-float.h".
    	(value_logical_not): Use target_float_is_zero.
    
    	* python/py-value.c: Include "target-float.h".
    	(valpy_nonzero): Use target_float_is_zero.

commit 74be0bdc3bf8ae5b2e70992730539bca1d1b43ee
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Nov 6 00:00:29 2017 +0000

    Automatic date update in version.in

commit 26a9301057457ae576b51b8127bb805b4e484a6b
Author: Alan Modra <amodra@gmail.com>
Date:   Sun Nov 5 19:52:13 2017 +1030

    Proper bound check in _bfd_doprnt_scan
    
    While an abort after storing out of bounds by one to an array in our
    caller is probably OK in practice, it's better to check before storing.
    
    	PR 22397
    	* bfd.c (_bfd_doprnt_scan): Check args index before storing, not
    	after.

commit 7167fe4c70ea74f1bb74a6130bb7e6bf5ca354ee
Author: Alan Modra <amodra@gmail.com>
Date:   Sun Nov 5 16:22:55 2017 +1030

    PR22397, BFD internal error when message locale isn't C
    
    This adds positional parameter support to the bfd error handler,
    something that was lost 2017-04-13 when _doprnt was added with commit
    c08bb8dd.  The number of format args is now limited to 9, which is
    sufficient for current _bfd_error_handler messages.  If someone
    exceeds 9 args they get the joy of modifying this code to support more
    args (shouldn't be too difficult).
    
    	PR 22397
    	* bfd.c (union _bfd_doprnt_args): New.
    	(PRINT_TYPE): Add FIELD arg.  Take value from args.
    	(_bfd_doprnt): Replace ap parameter with args.  Adjust all
    	PRINT_TYPE invocations and reading of format args to suit.
    	Move "%%" handling out of switch handling args.  Support
    	positional parameters.
    	(_bfd_doprnt_scan): New function.
    	(error_handler_internal): Call _bfd_doprnt_scan and read args.

commit 0724bd460babc0c3c31aa67b5f8385a4cb5279f9
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Nov 5 00:00:26 2017 +0000

    Automatic date update in version.in

commit f15d0b545b9e9dada8d1398163693f67792e9e79
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 4 13:41:29 2017 +1030

    powerpc TLS in PIEs
    
    This patch removes unnecessary GOT IE TLS relocations in PIEs.  Useful
    with --no-tls-optimize, or with an enormous TLS segment.  With the
    default --tls-optimize in effect IE code sequences will be edited to
    LE under the same circumstances we can remove the GOT reloc.
    
    	* elf32-ppc.c (got_entries_needed, got_relocs_needed): New functions.
    	(allocate_dynrelocs, ppc_elf_size_dynamic_sections): Use them here.
    	(ppc_elf_relocate_section): Don't output a dynamic relocation
    	for IE GOT entries in an executable.
    	* elf64-ppc.c (allocate_got): Trim unnecessary TPREL relocs.
    	(ppc64_elf_size_dynamic_sections): Likewise.
    	(ppc64_elf_relocate_section): Likewise.

commit 98bbb1b86180324b278842d8d73c79cb5d76d349
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 2 08:05:03 2017 +1030

    PowerPC readonly_dynrelocs
    
    PowerPC64 lacked the mapfile textrel warning on finding dynamic relocs
    in read-only sections.  This patch adds it, and tidies the
    readonly_dynrelocs interface.  PowerPC doesn't need a SEC_ALLOC test
    because !SEC_ALLOC sections are excluded by check_relocs so will never
    have dyn_relocs.
    
    	* elf32-ppc.c (readonly_dynrelocs): Delete info param.  Update all
    	callers.  Don't bother with SEC_ALLOC test.  Return section pointer.
    	Move minfo call to..
    	(maybe_set_textrel): ..here.
    	* elf64-ppc.c (readonly_dynrelocs): Return section pointer.
    	(maybe_set_textrel): Call minfo to print textrel warning to map file.

commit 2e684e75ae3939f5f14fb89ca8a300b610d093dd
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 2 12:09:34 2017 +1030

    hppa-linux TLS relocs
    
    This patch fixes various problems with TLS relocations.
    
    1) Report an error if a symbol has both TLS and normal GOT entries.
    2) The GOT entry size calculation was obscure and made use of the fact
       that a symbol shouldn't have both normal and TLS GOT entries.
    3) The second word of a GD GOT entry sometimes omitted a dynamic
       reloc, which was fine except that doing so makes it impossible for
       ld.so to differentiate GD and LD entries.  Also, a NONE reloc was
       emitted.
    4) Unnecessary relocs were emitted for GOT entries.
    5) GOT relocs didn't take note of UNDEFWEAK_NO_DYNAMIC_RELOC.
    
    	* elf32-hppa.c (enum _tls_type): Move.
    	(struct elf32_hppa_link_hash_entry): Make tls_type a bitfield.
    	(elf32_hppa_check_relocs): Set DF_STATIC_TLS only for shared libraries.
    	Tidy tls_type handling.  Set symbol tls_type for GOT_TLS_LDM too.
    	(got_entries_needed, got_relocs_needed): New functions.
    	(allocate_dynrelocs): Use them.
    	(elf32_hppa_size_dynamic_sections): Likewise.
    	(elf32_hppa_relocate_section): Delete bogus FIXME.  Formatting.
    	Correct code emitting relocs on GD/IE got entries.  Report an
    	error when a symbol has both normal and TLS GOT relocs.

commit 127e8e9f62ed0e7145dfa1172c6253275fc150dd
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 31 18:13:03 2017 +1030

    PR22394, hppa-linux-ld fails to emit dynamic relocations
    
    gcc -mfast-indirect-calls emits a function pointer initialization
    without a P% (plabel) modifier.  ld does not create the necessary
    dynamic relocations for this to work.  It turns out that the problem
    is caused by the non_got_ref symbol flag.  This flag is set for
    non-pic by check_relocs to indicate that the symbol might need copy
    relocations or dynamic relocations.  Later, the backend
    adjust_dynamic_symbol clears the flag to indicate dynamic relocations
    are needed, but leaves it set when copy relocations were created.  The
    inversion in meaning is insane, but it's that way because the backend
    adjust_dynamic_symbol function doesn't get to look at all symbols..
    Anyway, the insanity works for non-function symbols.  However, the
    flag is left set on any function symbol with a dynamic relocation.
    
    This patch fixes the non_got_ref handling for function symbols, adds
    -z nocopyreloc for hppa-elf, reports where textrel occurs, and expands
    comments.  The check_relocs change just stops creation of dyn_relocs
    we always threw away later.
    
    	PR 22394
    	* elf32-hppa.c (elf32_hppa_check_relocs): Don't create dyn_relocs
    	for plabels when non-pic.
    	(maybe_set_textrel): New function.
    	(readonly_dynrelocs): Move and rewrite.
    	(elf32_hppa_adjust_dynamic_symbol): Use it.  Don't create copy
    	relocs when def_regular or -z nocopyreloc.  Handle non_got_ref
    	for functions.  Expand non_got_ref comments.
    	(elf32_hppa_size_dynamic_sections): Use maybe_set_textrel.

commit ab4b1c4699fecd1f2461cecae108e7c583c15bc4
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 22:46:40 2017 -0600

    Use std::vector in h8300-tdep.c
    
    This changes h8300-tdep.c to use std::vector, allowing the removal of
    a cleanup.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* h8300-tdep.c (h8300_push_dummy_call): Use std::vector.

commit 454dafbdf2d1293a9b18a6fe9e9c9e0911eb740c
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 22:32:45 2017 -0600

    Introduce gdb_breakpoint_up
    
    This introduces gdb_breakpoint_up, a unique_ptr typedef that owns a
    breakpoint.  It then changes set_momentary_breakpoint to return a
    gdb_breakpoint_up and fixes up the fallout.  This then allows the
    removal of make_cleanup_delete_breakpoint.
    
    Once breakpoints are fully C++-ified, this typedef can be removed in
    favor of a plain std::unique_ptr.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* breakpoint.c (set_momentary_breakpoint): Return
    	breakpoint_up.
    	(until_break_command): Update.
    	(new_until_break_fsm): Change argument types to
    	breakpoint_up.
    	(set_momentary_breakpoint_at_pc): Return breakpoint_up.
    	(do_delete_breakpoint_cleanup, make_cleanup_delete_breakpoint):
    	Remove.
    	* infcmd.c (finish_forward): Update.
    	* breakpoint.h (set_momentary_breakpoint)
    	(set_momentary_breakpoint_at_pc): Return breakpoint_up.
    	(make_cleanup_delete_breakpoint): Remove.
    	(struct breakpoint_deleter): New.
    	(breakpoint_up): New typedef.
    	* infrun.c (insert_step_resume_breakpoint_at_sal_1): Update.
    	(insert_exception_resume_breakpoint): Update.
    	(insert_exception_resume_from_probe): Update.
    	(insert_longjmp_resume_breakpoint): Update.
    	* arm-linux-tdep.c (arm_linux_copy_svc): Update.
    	* elfread.c (elf_gnu_ifunc_resolver_stop): Update.
    	* infcall.c (call_function_by_hand_dummy): Update

commit 331b71e5ee226cb5455969899274f0e43e83aa1e
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 19:16:58 2017 -0600

    Use unique_xmalloc_ptr in c_type_print_base
    
    This changes c_type_print_base to use unique_xmalloc_ptr, removing a
    cleanup.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* c-typeprint.c (c_type_print_base): Use gdb::unique_xmalloc_ptr.

commit 9f584b37e36b67009fa23b6cffbec1bf691ef9ba
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 19:11:20 2017 -0600

    Remove cleanups from linux-tdep.c
    
    This removes some cleanups from linux-tdep.c, replacing them with
    def_vector or byte_vector as appropriate.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* linux-tdep.c (linux_core_info_proc_mappings): Use
    	gdb::def_vector.
    	(linux_get_siginfo_data): Return gdb::byte_vector.  Remove
    	"size" argument.
    	(linux_corefile_thread): Update.
    	(linux_make_corefile_notes): Remove unused variable.

commit 779bc38eca950c7f3b64173e99e25f0c0edfbe3b
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 18:52:30 2017 -0600

    Use gdb::byte_vector in ppc-linux-tdep.c
    
    This removes a cleanup from ppc-linux-tdep.c, replacing it with
    gdb::byte_vector.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* ppc-linux-tdep.c (ppc_linux_get_syscall_number): Use
    	gdb::byte_vector.

commit ed2b3126d1828d55d57880c6b6045a4e58c05cde
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 18:51:15 2017 -0600

    Remove make_cleanup_free_objfile
    
    This replaces make_cleanup_free_objfile with std::unique_ptr.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* objfiles.c (do_free_objfile_cleanup): Remove.
    	* compile/compile-object-load.c (compile_object_load): Update.
    	* objfiles.h (make_cleanup_free_objfile): Remove.

commit 7f6743fd09d0f3188dd9dcdf31acf81131f9bf1f
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 16:37:27 2017 -0600

    Use gdb::def_vector in sparc64-tdep.c
    
    This removes a cleanup from sparc64-tdep.c, replacing it with
    gdb::def_vector.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* sparc64-tdep.c (do_examine): Use gdb::def_vector.
    	(adi_read_versions): Change "tags" to "gdb_byte *".
    	(adi_print_versions): Likewise.

commit c80049d3b615691dc902762d5d97551aa9664442
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 09:00:09 2017 -0600

    Replace start_rbreak_breakpoints and end_rbreak_breakpoints
    
    This replaces start_rbreak_breakpoints and end_rbreak_breakpoints with
    a new scoped class.  This allows the removal of a cleanup.
    
    This also fixes an earlier memory leak regression, by changing
    "string" to be a std::string.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* breakpoint.c
    	(scoped_rbreak_breakpoints::scoped_rbreak_breakpoints): Rename
    	from start_rbreak_breakpoints.
    	(scoped_rbreak_breakpoints): Rename from end_rbreak_breakpoints.
    	* breakpoint.h (class scoped_rbreak_breakpoints): New.
    	(start_rbreak_breakpoints, end_rbreak_breakpoints): Remove.
    	* symtab.c (do_end_rbreak_breakpoints): Remove.
    	(rbreak_command): Use scoped_rbreak_breakpoints, std::string.

commit 167b0be1b5ef36a5605fcdfba0c84db2ed475e1e
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 1 08:32:13 2017 -0600

    Remove directive-searched cleanups
    
    This removes a few cleanups related to the "searched" field in
    struct using_direct, replacing these with scoped_restore.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* cp-namespace.c (reset_directive_searched): Remove.
    	(cp_lookup_symbol_via_imports): Use scoped_restore.
    	* cp-support.c (reset_directive_searched): Remove.
    	(make_symbol_overload_list_using): Use scoped_restore.
    	* d-namespace.c (d_lookup_symbol_imports): Use scoped_restore.
    	(reset_directive_searched): Remove.

commit 5eae7aeaf754549d3645a0c590c5ef9f0134a32d
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Oct 25 15:52:23 2017 -0600

    Use unique_xmalloc_ptr in find_separate_debug_file_by_debuglink
    
    This changes find_separate_debug_file_by_debuglink to use
    unique_xmalloc_ptr, removing some cleanups.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* symfile.c (find_separate_debug_file_by_debuglink): Use
    	unique_xmalloc_ptr.

commit c6bcad5ffc9b4021253487e46a8754e5804135cf
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Oct 25 15:46:31 2017 -0600

    Use std::vector in compile-loc2c.c
    
    This changes compile-loc2c.c to use std::vector, removing some
    cleanups.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* compile/compile-loc2c.c (compute_stack_depth_worker): Change
    	type of "info".
    	(compute_stack_depth): Likewise.
    	(do_compile_dwarf_expr_to_c): Use std::vector.

commit 20dcd8cae7d87910f6c3936bad72e78b647a8de6
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Oct 25 15:44:56 2017 -0600

    Remove cleanups from link_callbacks_einfo
    
    This removes a cleanup from link_callbacks_einfo by using std::string.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* compile/compile-object-load.c (link_callbacks_einfo): Use
    	std::string.

commit 33c7c59df060e9952fc2f608c3a6ff0a23ecd40d
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Oct 20 09:30:48 2017 -0600

    Replace really_free_pendings with a scoped_ class
    
    This introduces scoped_free_pendings, and changes users of
    really_free_pendings to use it instead, removing some clenaups.
    
    I tried to examine the affected code to ensure there aren't dangling
    cleanups in the vicinity.
    
    gdb/ChangeLog
    2017-11-04  Tom Tromey  <tom@tromey.com>
    
    	* dwarf2read.c (process_full_comp_unit, process_full_type_unit):
    	Use scoped_free_pendings.
    	* dbxread.c (dbx_symfile_read, dbx_psymtab_to_symtab_1): Use
    	scoped_free_pendings.
    	* xcoffread.c (xcoff_psymtab_to_symtab_1): Use scoped_free_pendings.
    	(xcoff_initial_scan): Likewise.
    	* buildsym.c (reset_symtab_globals): Update comment.
    	(scoped_free_pendings): Rename from really_free_pendings.
    	(prepare_for_building): Update comment.
    	(buildsym_init): Likewise.
    	* buildsym.h (class scoped_free_pendings): New class.
    	(really_free_pendings): Don't declare.

commit ebe6dbc2645081e3a166865f057e7cc9643e7e12
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Nov 4 00:00:27 2017 +0000

    Automatic date update in version.in

commit 79b0c981b8f0c912208ec305d48e775bcb6d2624
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Nov 3 11:14:56 2017 -0700

    x86: Remove func_pointer_refcount
    
    Since check_reloc is running after gc_sections, there is no need for
    reference count.  If a function pointer relocation can be resolved at
    run-time, there is no need for PLT and it doesn't count as non-GOT/PLT
    relocation.  func_pointer_refcount can be removed.
    
    	* elf32-i386.c (elf_i386_check_relocs): Set plt.refcount to 1.
    	Don't use func_pointer_refcount.  Don't set plt.refcount nor
    	non_got_ref for function pointer reference.
    	* elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
    	* elfxx-x86.c (elf_x86_allocate_dynrelocs): Don't use
    	func_pointer_refcount.
    	(_bfd_x86_elf_copy_indirect_symbol): Don't copy
    	func_pointer_refcount.
    	(_bfd_x86_elf_hide_symbol): Don't use func_pointer_refcount.
    	* elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Likewise.
    	(elf_x86_link_hash_entry): Remove func_pointer_refcount.

commit 67fa57cfa536cefb5ae7cc4635db66d03fdbd8bb
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Fri Nov 3 16:07:23 2017 +0100

    Fix regression on ARM after Target FP patches
    
    Commit edd079d9f6ca2f9ad21322b742269aec5de61190 exposed a pre-existing bug
    in convert_doublest_to_floatformat.  In the specific case of converting
    a zero value to a floatformat using a "special" byteorder (i.e. neither
    floatformat_little nor floatformat_big), the output buffer was actually
    left uninitialized.
    
    gdb/ChangeLog:
    2017-11-03  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* doublest.c (convert_doublest_to_floatformat): Fix uninitialized
    	output when converting a zero value to a special byteorder format.

commit fdddd2900f39584e7d6cee27127593fba2cb0cf2
Author: claziss <claziss@synopsys.com>
Date:   Fri Nov 3 15:36:42 2017 +0100

    [ARC] Force the disassam to use the hexadecimal number for printing
    
    Force printing of the short/signed values using hexadecimal
    representation via disassembler option.
    
    opcode/
    2017-11-03  Claudiu Zissulescu  <claziss@synopsys.com>
    
            * arc-dis.c (print_hex): New variable.
            (parse_option): Check for hex option.
            (print_insn_arc): Use hexadecimal representation for short
            immediate values when requested.
            (print_arc_disassembler_options): Add hex option to the list.
    
    binutils/
    2017-11-03  Claudiu Zissulescu  <claziss@synopsys.com>
    
            * doc/binutils.texi (ARC): Update disassembler options.
            * testsuite/binutils-all/arc/hexprint.s: New file.
            * testsuite/binutils-all/arc/objdump.exp: Test hex printing feature.

commit 7605d944531519ddf9026bf059475a4347c83aa4
Author: Siddhesh Poyarekar <siddhesh@sourceware.org>
Date:   Fri Nov 3 19:33:03 2017 +0530

    Add option for Qualcomm Saphira part
    
    This adds an option for the Qualcomm saphira core, the corresponding
    gcc patch is here:
    
    https://gcc.gnu.org/ml/gcc-patches/2017-10/msg02055.html
    
    This was tested with an aarch64 build and make check and also by
    building and running SPEC2006.
    
    	gas/
    	* config/tc-aarch64.c (aarch64_cpus): Add saphira.
    	* doc/c-aarch64.texi: Likewise.

commit bf59c5d5f4f5b8b4da1f5f605cfa546f8029b43d
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Nov 3 13:57:15 2017 +0000

    Fix integer overflow problems when reading an ELF binary with corrupt augmentation data.
    
    	PR 22386
    	* dwarf.c (read_cie): Use bfd_size_type for
    	augmentation_data_len.
    	(display_augmentation_data): New function.
    	(display_debug_frames): Use it.
    	Check for integer overflow when testing augmentation_data_len.

commit 3334eba7f4aeaa06926d5f1fb51446c5cea43e42
Author: claziss <claziss@synopsys.com>
Date:   Fri Nov 3 14:38:05 2017 +0100

    [ARC] Sync opcode data base.
    
    New EM and HS variants are developed, sync the data base to match them.
    
    opcodes/
    2017-11-03  Claudiu Zissulescu  <claziss@synopsys.com>
    
            * arc-tbl.h (abss, abssh, adc, adcs, adds, aslacc, asls, aslsacc)
            (asrs, asrsr, cbflyhf0r, cbflyhf1r, cmacchfr, cmacchnfr, cmachfr)
            (cmachnfr, cmpychfr, cmpychnfr, cmpyhfmr, cmpyhfr, cmpyhnfr, divf)
            (dmachbl, dmachbm, dmachf, dmachfr, dmacwhf, dmpyhbl, dmpyhbm)
            (dmpyhf, dmpyhfr, dmpyhwf, dmpywhf, dsync, flagacc, getacc, macdf)
            (macf, macfr, macwhfl, macwhflr, macwhfm, macwhfmr, macwhkl)
            (macwhkul, macwhl, macwhul, mpydf, mpyf, mpyfr, mpywhfl, mpywhflr)
            (mpywhfm, mpywhfmr, mpywhkl, mpywhkul, mpywhl, mpywhul, msubdf)
            (msubf, msubfr, msubwhfl, msubwhflr, msubwhfm, msubwhfmr, mul64)
            (negs, negsh, normacc, qmachf, qmpyh, qmpyhf, rndh, satf, sath)
            (sbcs, setacc, sflag, sqrt, sqrtf, subs, swi_s, vabs2h, vabss2h)
            (vadd4b, vadds2, vadds2h, vadds4h, vaddsubs, vaddsubs2h)
            (vaddsubs4h, valgn2h, vasl2h, vasls2h, vasr2h, vasrs2h, vasrsr2h)
            (vext2bhl, vext2bhlf, vext2bhm, vext2bhmf, vlsr2h, vmac2hf)
            (vmac2hfr, vmac2hnfr, vmax2h, vmin2h, vmpy2h, vmpy2hf, vmpy2hfr)
            (vmpy2hwf, vmsub2hf, vmsub2hfr, vmsub2hnfr, vneg2h, vnegs2h)
            (vnorm2h, vpack2hbl, vpack2hblf, vpack2hbm, vpack2hbmf, vpack2hl)
            (vpack2hm, vperm, vrep2hl, vrep2hm, vsext2bhl, vsext2bhm, vsub4b)
            (vsubadds, vsubadds2h, vsubadds4h, vsubs2, vsubs2h, vsubs4h):
            Changed opcodes.
            (prealloc, prefetch*): Place them before ld instruction.
            * arc-opc.c (skip_this_opcode): Add ARITH class.

commit 50ab6ace3803ca317f265dae6064494e3b7fa8cb
Author: Yao Qi <yao.qi@linaro.org>
Date:   Fri Nov 3 12:53:53 2017 +0000

    Skip gdb.mi/list-thread-groups-available.exp if no xml support
    
    I see the following test fail in gdb (configured --with-expat=no),
    
    -list-thread-groups --available^M
    &"warning: Can not parse XML OS data; XML support was disabled at compile time\n"^M
    ^error,msg="Can not fetch data now."^M
    (gdb) ^M
    FAIL: gdb.mi/list-thread-groups-available.exp: list available thread groups (unexpected output)
    
    This patch skips it if XML parsing in GDB is disabled, like what you did
    in gdb.mi/mi-info-os.exp.
    
    gdb/testsuite:
    
    2017-11-03  Yao Qi  <yao.qi@linaro.org>
    
    	* gdb.mi/list-thread-groups-available.exp: Skip it if XML parsing
    	in GDB is disabled.

commit 6cee897971d4d7cd37d2a686bb6d2aa3e759c8ca
Author: Nick Clifton <nickc@redhat.com>
Date:   Fri Nov 3 11:55:21 2017 +0000

    Fix excessive memory allocation attempts and possible integer overfloaws when attempting to read a COFF binary with a corrupt symbol count.
    
    	PR 22385
    	* coffgen.c (_bfd_coff_get_external_symbols): Check for an
    	overlarge raw syment count.
    	(coff_get_normalized_symtab): Likewise.

commit 8e68731c8a4aecb3481803e91b9bcd2df182c135
Author: Yao Qi <yao.qi@linaro.org>
Date:   Fri Nov 3 10:36:42 2017 +0000

    Skip gdb.python/py-thrhandle.exp if python is not enabled.
    
    gdb/testsuite:
    
    2017-11-03  Yao Qi  <yao.qi@linaro.org>
    
    	* gdb.python/py-thrhandle.exp: Skip it if python is not
    	enabled.

commit 3d47a7fef640b0a5a90aa7494c41982cf84a4092
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Nov 3 00:00:26 2017 +0000

    Automatic date update in version.in

commit c05e0c5af35ebbb1ca39bb1efffae2adecdfa253
Author: Siddhesh Poyarekar <siddhesh@sourceware.org>
Date:   Thu Nov 2 22:49:32 2017 +0530

    aarch64: Remove AARCH64_FEATURE_F16 from AARCH64_ARCH_V8_2
    
    The FP16 feature is optional in ARMv8.2, so it is wrong to add it to
    the default AARCH64_ARCH_V8_2 feature flags.  This patch makes the
    behaviour consistent with that of gcc, which also does not assume FP16
    for ARMv8.2.
    
    include/
    
    	* opcode/aarch64.h (AARCH64_ARCH_V8_2): Drop
    	AARCH64_FEATURE_F16.

commit 6ab2c4ed51f9c4243691755e1b1d2149c6a426f4
Author: Mingi Cho <mgcho.minic@gmail.com>
Date:   Thu Nov 2 17:01:08 2017 +0000

    Work around integer overflows when readelf is checking for corrupt ELF notes when run on a 32-bit host.
    
    	PR 22384
    	* readelf.c (print_gnu_property_note): Improve overflow checks so
    	that they will work on a 32-bit host.

commit f26ae15b471aaddee81d9d6c03af1cb0f2081735
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:42 2017 +0000

    Construct readonly regcache without address space
    
    The address space is useless to readonly regcache, so this patch removes
    the parameter to construct readonly regcache.
    
    address_space was added in regcache by 6c95b8d, but for read-write
    regcache.  regcache::aspace is used for various breakpoint/watchpoint
    checking, and these regcache are not read-only regcache.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* frame.c (do_frame_register_read): Remove aspace.
    	* jit.c (jit_frame_sniffer): Likwise.
    	* ppc-linux-tdep.c (ppu2spu_sniffer): Likewise.
    	* regcache.c (regcache::regcache): Pass nullptr.
    	(regcache_print): Caller updated.
    	* regcache.h (regcache::regcache): Remove one constructor
    	parameter aspace.

commit 6c6e9412e930c96f48b8ee78a389437328f5283c
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:42 2017 +0000

    const-fy regcache::m_readonly_p
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* regcache.h (regcache) <m_readonly_p>: Change it to const bool.

commit 8b86c9592117b3ba52921af11868dc0b81ce4858
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:42 2017 +0000

    const-fy regcache::m_aspace
    
    regcache::m_aspace is a const, never changed during the lifetime of
    regcache object.  The address_space object is a const object too.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* breakpoint.c (insert_single_step_breakpoints): Update.
    	* frame.c (struct frame_info) <aspace>: Add const.
    	(frame_save_as_regcache): Add const.
    	(get_frame_address_space): Return const address_space *.
    	* frame.h (get_frame_address_space): Update declaration.
    	* infrun.c (struct step_over_info) <aspace>: Add const.
    	(set_step_over_info): Make aspace const.
    	(displaced_step_prepare_throw): Change variable const.
    	(resume): Likewise.
    	(proceed): Likewise.
    	(adjust_pc_after_break): Likewise.
    	(save_waitstatus): Likewise.
    	(handle_signal_stop): Likewise.
    	(keep_going_pass_signal): Likewise.
    	* jit.c (jit_frame_sniffer): Add const.
    	* mips-tdep.c (mips_single_step_through_delay): Likewise.
    	* ppc-linux-tdep.c (ppu2spu_sniffer): Likewise.
    	* record-full.c (record_full_wait_1): Likewise.
    	* regcache.c (regcache::regcache): Change parameter to const.
    	* regcache.h (regcache::regcache): Likewise.
    	(regcache::aspace): Return const address_space *.
    	(regcache) <m_aspace>: Add const.

commit a01bda5221f75031ea2b6d05860e46c7b9b58b55
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:41 2017 +0000

    s/get_regcache_aspace (regcache)/regcache->aspace ()/g
    
    and remove get_regcache_aspace.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* darwin-nat.c (cancel_breakpoint): Use regcache->aspace ().
    	* frame.c (create_sentinel_frame): Likewise.
    	* infrun.c (displaced_step_prepare_throw): Likewise.
    	(resume): Likewise.
    	(thread_still_needs_step_over_bp): Likewise.
    	(proceed): Likewise.
    	(do_target_wait): Likewise.
    	(adjust_pc_after_break): Likewise.
    	(handle_syscall_event): Likewise.
    	(save_waitstatus): Likewise.
    	(handle_inferior_event_1): Likewise.
    	(handle_signal_stop): Likewise.
    	(keep_going_pass_signal): Likewise.
    	* linux-nat.c (status_callback): Likewise.
    	(save_stop_reason): Likewise.
    	(resume_stopped_resumed_lwps): Likewise.
    	* record-full.c (record_full_exec_insn): Likewise.
    	(record_full_wait_1): Likewise.
    	* regcache.c (get_regcache_aspace): Remove.
    	* regcache.h (get_regcache_aspace): Remove.

commit d999647bc427ce2e083c4449b683705449d0bb58
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:41 2017 +0000

    Remove regcache_descr::nr_raw_registers
    
    struct regcache_descr has fields nr_raw_registers and gdbarch, and
    nr_raw_registers can be got via gdbarch_num_regs (gdbarch), so it looks
    nr_raw_registers is redundant.  This patch removes it and adds a protected
    method num_raw_registers.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* regcache.c (struct regcache_descr) <nr_raw_registers>: Remove.
    	(init_regcache_descr): Use gdbarch_num_regs.
    	(regcache::regcache): Likewise.
    	(regcache::get_register_status): Likewise.
    	(regcache::assert_raw_regnum): Likewise.
    	(regcache::cooked_read): Likewise.
    	(regcache::cooked_read_value): Likewise.
    	(regcache::cooked_write): Likewise.
    	(regcache::dump): Likewise.
    	(regcache::num_raw_registers): New method.
    	* regcache.h (class regcache) <num_raw_registers>: New.

commit 4e888c281cd19f019248bd165d7055af88641c80
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:41 2017 +0000

    New method regcache::assert_regnum
    
    class regcache has some methods checking the range of register number,
    this patch is to move it in a new method assert_regnum.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* regcache.c (regcache::assert_regnum): New method.
    	(regcache::invalidate): Call assert_regnum.
    	(regcache::raw_update): Likewise.
    	(regcache::raw_write): Likewise.
    	(regcache::raw_read_part): Likewise.
    	(regcache::raw_write_part): Likewise.
    	(regcache::raw_supply): Likewise.
    	(regcache::raw_supply_integer): Likewise.
    	(regcache::raw_supply_zeroed): Likewise.
    	(regcache::raw_collect): Likewise.
    	(regcache::raw_collect_integer): Likewise.
    	* regcache.h (regcache::assert_regnum): Declare.

commit 2e1b49b32ab9aec1aca94f424cbe275e5f6f9ab4
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:15:41 2017 +0000

    Remove code wrapped by "#if 0"
    
    These code wrapped by "#if 0" was added by af030b9a, which added the new
    command to dump registers in 2002.  The email didn't mention this either
    https://sourceware.org/ml/gdb-patches/2002-08/msg00227.html  It was there
    for 15 years, and nobody needs it, so we can remove it.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* regcache.c (regcache::dump): Remove code.

commit 6c5218dfdb7b38cc1617be7753cc1ec6d0612382
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 2 15:05:12 2017 +0000

    Remove regcache_descr fields sizeof_raw_register_status and sizeof_cooked_register_status
    
    struct regcache_descr has two fields sizeof_raw_register_status
    and sizeof_cooked_register_status, but they equal to nr_cooked_registers
    and nr_raw_registers respectively, so this patch removes them.
    
    gdb:
    
    2017-11-02  Yao Qi  <yao.qi@linaro.org>
    
    	* regcache.c (struct regcache_descr) <sizeof_raw_register_status>:
    	Remove.
    	<sizeof_cooked_register_status>: Remove.
    	(init_regcache_descr): Update.
    	(regcache::regcache): Use nr_cooked_registers and nr_raw_registers.
    	(regcache::save): Likewise.
    	(regcache::dump): Likewise.

commit 852735806aa4343ba4bbe89656041800cf482918
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date:   Thu Nov 2 14:16:22 2017 +0000

    [ARM] Help wince objdump on coproc tests
    
    Object files other than ELF do not have mapping symbols to indicate the
    type of data for objdump to work reliably. This is why the following
    tests FAIL on arm-wince-pe targets:
    ARMv6T2 Thumb CoProcessor Instructions (1)
    ARMv6T2 Thumb CoProcessor Instructions (2)
    
    This patch adds the force-thumb disassembler option to objdump for this
    test to PASS on these targets as well.
    
    2017-11-02  Thomas Preud'homme  <thomas.preudhomme@arm.com>
    
    gas/
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: Add
    	--disassembler-options=force-thumb to objdump options.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: Likewise.

commit dcc31d286ad05aa93577181f9a8292009622363e
Author: James Bowman <jamesb@excamera.com>
Date:   Wed Nov 1 18:34:25 2017 -0700

    FT32: support for FT32B processor - part 2/2
    
    FT32B is a new FT32 family member.
    This patch adds support for the compressed instructions to gdb and sim.
    
    gdb/ChangeLog:
            * ft32-tdep.c (ft32_fetch_instruction): New function.
            (ft32_analyze_prologue): Use ft32_fetch_instruction().
    
    sim/ChangeLog:
            * ft32/interp.c (step_once): Add ft32 shortcode decoder.

commit 89f3c4b6b9b565720f88636d966f22923c03e9cb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Nov 2 00:00:15 2017 +0000

    Automatic date update in version.in

commit 81b42bcab16f4462eb4c91db2cf09cd76e17402e
Author: James Bowman <james.bowman@ftdichip.com>
Date:   Wed Nov 1 15:33:24 2017 +0000

    FT32B is a new FT32 family member. It has a code compression scheme, which requires the use of linker relaxations. The change is quite large, so submission is in several parts.
    
    Part 2 adds a relaxation pass, which actually implements the code compression scheme.
    
    bfd	* archures.c: Add bfd_mach_ft32b.
    	* cpu-ft32.c: Add arch_info_struct.
    	* elf32-ft32.c: Add R_FT32_RELAX, SC0, SC1,
    	DIFF32. (ft32_elf_relocate_section): Add clauses
    	for R_FT32_SC0, SC1, DIFF32.  (ft32_reloc_shortable,
    	elf32_ft32_is_diff_reloc, elf32_ft32_adjust_diff_reloc_value,
    	elf32_ft32_adjust_reloc_if_spans_insn,
    	elf32_ft32_relax_delete_bytes, elf32_ft32_relax_is_branch_target,
    	ft32_elf_relax_section): New function.
    	* reloc.c: Add BFD_RELOC_FT32_RELAX, SC0, SC1, DIFF32.
    	* bfd-in2.h: Regenerate.
    	* libbfd.h: Regenerate.
    
    gas	* config/tc-ft32.c (md_assemble): add relaxation reloc
    	BFD_RELOC_FT32_RELAX.  (md_longopts): Add "norelax" and
    	"no-relax". (md_apply_fix): Add reloc BFD_RELOC_FT32_DIFF32.
    	(relaxable_section, ft32_validate_fix_sub, ft32_force_relocation,
    	ft32_allow_local_subtract): New function.
    	* config/tc-ft32.h: remove unused MD_PCREL_FROM_SECTION.
    	* testsuite/gas/ft32/insnsc.s: New test exercising all FT32B
    	shortcodes.
    
    include	* elf/ft32.h: Add R_FT32_RELAX, SC0, SC1, DIFF32.

commit a67d66eb97e7613a38ffe6622d837303b3ecd31d
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Nov 1 15:21:46 2017 +0000

    Prevent illegal memory accesses when attempting to read excessively large COFF line number tables.
    
    	PR 22376
    	* coffcode.h (coff_slurp_line_table): Check for an excessively
    	large line number count.

commit e0115a844607b280449986e661f551dff49a9031
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Nov 1 12:37:33 2017 +0000

    Update check for invalid values in pe_bfd_read_buildid function.
    
    	PR 22373
    	* peicode.h (pe_bfd_read_buildid): Revise check for invalid size
    	and offset in light of further possible bogus values.

commit ee357486aa87b17782111295c5e7bd4ac9e6970f
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Nov 1 11:35:42 2017 +0000

    Fix an invalid free called when attempting to link a COFF object against an ELF archive with --no-keep-memory enabled.
    
    	PR 22369
    	* coffgen.c (_bfd_coff_free_symbols): Fail if called on a non-COFF
    	file.
    	* cofflink.c (coff_link_check_archive_element): Skip non-COFF
    	members of an archive.

commit 4070243b5c1f66a36dd43a7b722e991ac9fc40e1
Author: Thomas Preud'homme <thomas.preudhomme@arm.com>
Date:   Wed Nov 1 09:49:13 2017 +0000

    [ARM] Fix Coprocessor instructions availability
    
    A few coprocessor instructions introduced in ARMv2 are currently
    accepted by GAS when targeting ARMv1 due to a typo in the code. This
    patch fixes the issue and introduce a more fine grained testing for
    coprocessor instructions availability. Coprocessor instructions are
    grouped as follows:
    
    * ARM coprocessor instructions introduced in ARMv2
      Includes: ldc, stc, mcr, mrc, cdp, ldcl, stcl
      Guarded by: ARM_EXT_V2
      Tests: copro-arm_v2plus-arm_v*.d
    
    * ARM coprocessor instructions introduced in ARMv5
      Includes: ldc2, ldc2l, stc2, stc2l, cdp2, mcr2, mrc2
      Guarded by: ARM_EXT_V5
      Tests: copro-arm_v5plus-arm_v*.d
    
    * ARM coprocessor instructions introduced in ARMv5TE
      Includes: mcrr, mrrc
      Guarded by: ARM_EXT_V5E
      Tests: copro-arm_v5teplus-arm_v*.d
    
    * ARM coprocessor instructions introduced in ARMv6
      Includes: mcrr2, mrrc2
      Guarded by: ARM_EXT_V6
      Tests: copro-arm_v6plus-arm_v*.d
    
    * Thumb coprocessor instructions introduced in ARMv6T2
      Includes: ldc, ldcl, stc, stcl, mcr, mrc, mcrr, mrrc, cdp, ldc2,
      ldc2l, stc2, stc2l, cdp2, mcr2, mrc2, mcrr2, mrrc2
      Guarded by: ARM_EXT_V6T2
      Tests: copro-thumb_v6t2plus-thumb_v*.d
    
    For each of these groups, at least 2 tests are performed:
    * instructions are not available in earlier architecture
    * instructions are available in architecture where they were introduced
    More tests need to be performed when instructions in a group span
    several assembly files.
    
    Note that an instruction in the original coprocessor testcase is
    changed to unified syntax to allow the testcase to be assembled for ARM
    and Thumb state. Correct processing of legacy syntax is covered in other
    testcases.
    
    2017-11-01  Thomas Preud'homme  <thomas.preudhomme@arm.com>
    
    gas/
    	* config/tc-arm.c (arm_ext_v2): Define to ARM_EXT_V2 feature bit.
    	* testsuite/gas/arm/copro.s: Split into ...
    	* testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus.s: This while
    	changing it to unified syntax and ...
    	* testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus.s: this and ...
    	* testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus.s: This and ...
    	* testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus.s: This.
    	* testsuite/gas/arm/copro.d: Split into ...
    	* testsuite/gas/arm/copro-arm_v2plus-arm_v2.d: This but target ARMv2
    	and ...
    	* testsuite/gas/arm/copro-arm_v5plus-arm_v5.d: this but target ARMv5
    	and ...
    	* testsuite/gas/arm/copro-arm_v5teplus-arm_v5te.d: This but target
    	ARMv5TE and ...
    	* testsuite/gas/arm/copro-arm_v6plus-arm_v6.d: This but target ARMv6.
    	* testsuite/gas/arm/copro-arm_v2plus-arm_v1.d: New testcase.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-1.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v2plus-thumb_v6t2plus-unavail.l: Expected
    	errors for the above two testcases.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-1.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v5plus-arm_v4.d: New testcase.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-2.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v5plus-thumb_v6t2plus-unavail.l:
    	Expected errors for the above two testcases.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-2.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v5teplus-arm_v5.d: New testcase.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-3.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v5teplus-thumb_v6t2plus-unavail.l:
    	Expected errors for the above two testcases.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-3.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v6plus-arm_v5te.d: New testcase.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v4t-4.d: New testcase.
    	* testsuite/gas/arm/copro-arm_v6plus-thumb_v6t2plus-unavail.l:
    	Expected errors for the above two testcases.
    	* testsuite/gas/arm/copro-thumb_v6t2plus-thumb_v6t2-4.d: New testcase.

commit 3988aed54acce3c682a877b51b0e09cce1079e81
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 31 22:13:21 2017 +1030

    PR22374, PowerPC unnecessary PLT entries
    
    We don't need a PLT entry when function pointer initialization in a
    read/write section is the only reference to a given function symbol.
    This patch prevents the unnecessary PLT entry, and ensures no dynamic
    relocs are emitted when UNDEFWEAK_NO_DYNAMIC_RELOC says so.
    
    bfd/
    	PR 22374
    	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't create a plt
    	entry when just a dynamic reloc can serve.  Ensure no dynamic
    	relocations when UNDEFWEAK_NO_DYNAMIC_RELOC by setting non_got_ref.
    	Expand and move the non_got_ref comment.
    	* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
    ld/
    	* testsuite/ld-powerpc/ambiguousv2.d: Remove FIXME.

commit e48f0c8f1b9fdb195394dc7afea02ce55e4ba5e4
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 31 11:13:30 2017 +1030

    PR22374 testcase, function pointer references in .data
    
    Function pointer references in .data ought to use a dynamic reloc.
    There shouldn't be any need for a PLT entry and definitely no copy
    reloc.
    
    This test fails on quite a few targets, but isn't something that
    anyone should worry about too much.  It's really just a missed
    optimization.
    
    	PR 22374
    	* testsuite/ld-elf/pr22374a.s,
    	* testsuite/ld-elf/pr22374b.s,
    	* testsuite/ld-elf/pr22374-1.r,
    	* testsuite/ld-elf/pr22374-2.r: New test.
    	* testsuite/ld-elf/elf.exp: Run it.

commit 46b06a98d112ee433a8f81c700a8852c92ca8132
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 31 18:19:21 2017 +1030

    Tidy elf.exp
    
    	* testsuite/ld-elf/elf.exp: Merge some conditionals, a better
    	name than "shared library for next test", and use xfail arg
    	of run_ld_link_tests in a few places.

commit 3a87ae656c283e4f46ddf7d92c06ecb8992c2bf6
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Tue Oct 31 21:30:24 2017 -0400

    Use console uiout when executing breakpoint commands
    
    As reported here
    
      https://sourceware.org/ml/gdb/2017-10/msg00020.html
    
    the output of certain commands, like backtrace, doesn't appear anywhere
    when it is run as a breakpoint command and when using MI.
    
    The reason is that the current_uiout is set to the mi_ui_out while these
    commands run, whereas we want the output as CLI output.  Some commands
    like "print" work, because they use printf_filtered (gdb_stdout, ...)
    directly, bypassing the current ui_out.
    
    The fix I did is to force setting the cli_uiout as the current_uiout
    when calling execute_control_command.  I am not sure if this is the
    right way to fix the problem, comments about the approach would be
    appreciated.
    
    I enhanced gdb.mi/mi-break.exp to test the backtrace command.
    
    Regtested on the buildbot.
    
    gdb/ChangeLog:
    
    	* cli/cli-script.c (execute_control_command): Rename to ...
    	(execute_control_command_1): ... this.
    	(execute_control_command): New function.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.mi/mi-break.exp (test_breakpoint_commands): Test backtrace
    	as a breakpoint command.

commit 4d01dee4804d39c1671bc220caf32a327e7e4b10
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Nov 1 00:00:19 2017 +0000

    Automatic date update in version.in

commit 09b847f3a85ca29ec20ada375fe67843755b6413
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Tue Oct 31 14:29:25 2017 -0400

    tracepoint: Remove unnecessary const_cast
    
    We are passing a const char * to a const char * parameter, the
    const_cast is not necessary.
    
    gdb/ChangeLog:
    
    	* tracepoint.c (tfind_command): Remove const_cast.

commit 0bb6961f18b8e832d88b490d421ca56cea16c45b
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Oct 31 14:29:40 2017 +0000

    Fix illegal memory access triggered when parsing a PE binary with a corrupt data dictionary.
    
    	PR 22373
    	* peicode.h (pe_bfd_read_buildid): Check for invalid size and data
    	offset values.

commit 45ac8f4f107f50d77a8514ee8a244b82c1a8ea0c
Author: Nick Clifton <nickc@redhat.com>
Date:   Tue Oct 31 13:48:03 2017 +0000

    Remind users to use the --use-dynamic command line option to dump dynamic relocations.
    
    	* readelf.c (process_relocs): Tell users if no static relocs were
    	found, but if they had added --use-dynamic to the command line
    	then relocs would have been displayed.

commit f871c4853a9725682011c2314ea4308f3c34bd8d
Author: Mike Gulick <mike.gulick@mathworks.com>
Date:   Mon Oct 30 20:11:52 2017 -0400

    gdb/Makefile.in: fix 'make tags' failure
    
    'make tags' fails with the following error:
    
      make[2]: Entering directory '/local-ssd/mgulick/gdb/git/binutils-gdb/gdb'
      make[2]: *** No rule to make target 'gdb.h', needed by 'TAGS'.  Stop.
      make[2]: Leaving directory '/local-ssd/mgulick/gdb/git/binutils-gdb/gdb'
    
    The file gdb/gdb.h was removed in commit
    65630365f7d073430e62b4fe65f34dcdc0a4b05e.
    
    gdb/ChangeLog:
    
    2017-10-30  Mike Gulick  <mgulick@mathworks.com>
    
    	* Makefile.in (HFILES_NO_SRCDIR): Remove reference to gdb.h.

commit 916296ccea146c9b9517e00494bde307f2af7efa
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Oct 31 00:00:40 2017 +0000

    Automatic date update in version.in

commit b020ff8074af22639e3f3c0f700f45d067521249
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Mon Oct 30 14:27:30 2017 -0400

    Introduce in_inclusive_range, fix -Wtautological-compare warnings
    
    When compiling with clang or gcc 8, we see warnings like this:
    
    /home/emaisin/src/binutils-gdb/gdb/arm-tdep.c:10013:13: error: comparison of 0 <= unsigned expression is always true [-Werror,-Wtautological-compare]
          if (0 <= insn_op1 && 3 >= insn_op1)
              ~ ^  ~~~~~~~~
    /home/emaisin/src/binutils-gdb/gdb/arm-tdep.c:11722:20: error: comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-compare]
          else if (opB >= 0 && opB <= 2)
                   ~~~ ^  ~
    
    This is because an unsigned integer (opB in this case) will always be >=
    0.  It is still useful to keep both bounds of the range in the
    expression, even if one is at the edge of the data type range.  This
    patch introduces a utility function in_inclusive_range that gets rid of
    the warning while conveying that we are checking for a range.
    
    Tested by rebuilding.
    
    gdb/ChangeLog:
    
    	* common/common-utils.h (in_inclusive_range): New function.
    	* arm-tdep.c (arm_record_extension_space): Use
    	in_inclusive_range.
    	(thumb_record_ld_st_reg_offset): Use in_inclusive_range.
    	* cris-tdep.c (cris_spec_reg_applicable): Use
    	in_inclusive_range.

commit 1b81856f5b00e7ba860e4de2f3a426f342327165
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Oct 30 11:41:34 2017 +0000

    remote.c, QCatchSyscalls: Build std::string instead of unique_xmalloc_ptr
    
    Simplify the code a little bit using std::string + string_appendf.
    
    gdb/ChangeLog:
    2017-10-30  Pedro Alves  <palves@redhat.com>
    	    Simon Marchi <simon.marchi@ericsson.com>
    
    	* remote.c (remote_set_syscall_catchpoint): Build a std::string
    	instead of a gdb::unique_xmalloc_ptr, using string_appendf.

commit 31b833b3eab69d91df67edc3e9a21792abc3f93e
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Oct 30 11:41:34 2017 +0000

    Introduce string_appendf/string_vappendf
    
    string_appendf is like string_printf, but instead of allocating a new
    string, it appends to an existing string.  This allows reusing a
    std::string's memory buffer across several calls, for example.
    
    gdb/ChangeLog:
    2017-10-30  Pedro Alves  <palves@redhat.com>
    
    	* common/common-utils.c (string_appendf, string_vappendf): New
    	functions.
    	* common/common-utils.h (string_appendf, string_vappendf): New
    	declarations.
    	* unittests/common-utils-selftests.c (string_appendf_func)
    	(test_appendf_func, string_vappendf_wrapper, string_appendf_tests)
    	(string_vappendf_tests): New functions.
    	(_initialize_common_utils_selftests): Register "string_appendf" and
    	"string_vappendf tests".

commit 4a25033455f1e4e0325fdd249e30a79efc856689
Author: Pedro Alves <palves@redhat.com>
Date:   Mon Oct 30 11:41:34 2017 +0000

    Merge/shared string_printf and string_vprintf unit tests
    
    Merge the string_printf and string_vprintf tests, running them all
    against both functions.
    
    gdb/ChangeLog:
    2017-10-30  Pedro Alves  <palves@redhat.com>
    
    	* unittests/common-utils-selftests.c (format_func): New typedef.
    	(string_printf_tests, string_vprintf_tests): Tests factored out
    	and merged to ...
    	(test_format_func): ... this new function.
    	(string_printf_tests, string_vprintf_tests): Reimplement on top of
    	test_format_func.

commit 16c5c17e43b34c6cc5337b40e927bc2d05c38300
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Sun Oct 29 22:37:11 2017 -0400

    darwin-nat: Remove gdb.h include
    
    gdb.h has been removed in
    
      Eliminate catch_exceptions/catch_exceptions_with_msg
      65630365f7d073430e62b4fe65f34dcdc0a4b05e
    
    Remove the include in darwin-nat.c.  Tested by rebuilding.
    
    gdb/ChangeLog:
    
    	* darwin-nat.c: Remove include of gdb.h.

commit 7f9cb5d275e71a75e97230241ec7da6718a7a0f5
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Oct 30 12:02:42 2017 +1030

    frv-elf --gc-sections failures
    
    git commit 81742b83e9 exposed an frv-elf bug, with the object id not
    matching the hash table id.
    
    	* elf32-frv.c (ELF_TARGET_ID): Don't define for generic
    	elf target.

commit 81742b83e9f25895eaaf3a07ac1651a4e9a68251
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Oct 30 10:20:29 2017 +1030

    relocs_compatible test for gc-sections
    
    I noticed when looking at pr22300 that before calling check_relocs we
    have an elf_object_id test (added for pr11933) as well as the
    relocs_compatible test.  I believe backend gc_mark_hook and
    gc_sweep_hook ought to be protected similarly from being confused by
    unexpected relocations (for example, both elf64-ppc.c and elf32-ppc.c
    use _bfd_elf_relocs_compatible, so I think it would be possible for
    the ppc64 gc_mark_hook to be presented with a ppc32 relocatable
    object).
    
    	* elflink.c (elf_gc_sweep): Test elf_object_id in addition to
    	relocs_compatible.
    	(bfd_elf_gc_sections): Likewise.

commit d336fa6d820f50235c271ea327fadbf4ff6e1edd
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Oct 27 15:04:25 2017 +1030

    Fix hppa-linux pr22269-1 fail
    
    Adds UNDEFWEAK_NO_DYNAMIC_RELOC in the rest of places needed in this
    file, reduces dynamic relocations in a number of cases, and removes
    some bogus code that was attempting to handle dynamic common symbols
    specially.
    
    	PR 22269
    	* elf32-hppa.c (elf32_hppa_check_relocs): Move SEC_ALLOC test to
    	ensure non_got_ref is not set due to debug references.
    	(elf32_hppa_adjust_dynamic_symbol): Tidy plabel handling.  Use
    	SYMBOL_CALLS_LOCAL and UNDEFWEAK_NO_DYNAMIC_RELOC when determining
    	need for a plt entry.
    	(allocate_dynrelocs): Similarly for got entries.  Tidy code discarding
    	dynamic relocs when pic.  Remove bogus code attempting to handle
    	commons.
    	(elf32_hppa_relocate_section): Similarly.  Delete resolved_to_zero
    	and simplify.
    	(elf32_hppa_finish_dynamic_symbol): Use UNDEFWEAK_NO_DYNAMIC_RELOC
    	and SYMBOL_REFERENCES_LOCAL in GOT handling.

commit 2b2d16760741356447ae10acc93695678db5e5ee
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Mon Oct 30 00:00:32 2017 +0000

    Automatic date update in version.in

commit 7ca51576b94fb59a41050957d5ee822d21711abc
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Sun Oct 29 13:01:19 2017 -0400

    xtensa-xtregs: Fix formatting issues
    
    Fix a few formatting issues in that file.
    
    gdb/ChangeLog:
    
    	* xtensa-xtregs.c: Fix formatting issues.

commit c1342859dc02fd57e013ef544037a9ead4f23f60
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Sun Oct 29 01:13:33 2017 -0400

    xtensa-xtregs: Constify field
    
    Fix:
    
    In file included from /home/emaisin/src/binutils-gdb/gdb/xtensa-linux-nat.c:46:0:
    /home/emaisin/src/binutils-gdb/gdb/xtensa-xtregs.c:37:1: error: ISO C++ forbids converting a string constant to 'char*' [-Werror=write-strings]
     };
     ^
    
    gdb/ChangeLog:
    
    	* xtensa-xtregs.c (xtensa_regtable_t) <name>: Constify.

commit 692af2271947dee1918585c2fad36618a5d47d21
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sun Oct 29 00:00:25 2017 +0000

    Automatic date update in version.in

commit 484d8d361de65a8489252d14511b77c142d859a1
Author: Maksim Dzabraev <dzabraew@gmail.com>
Date:   Sun Oct 29 01:14:34 2017 +0700

    Make gdb.selected_thread().inferior return a new reference
    
    thpy_get_inferior function should return a new reference to the
    existing inferior object, and therefore should increment its refcount.
    
    Fixed bug looks like this.
    If multiple time call gdb.selected_thread ().inferior, gdb throws exception:
    
    (gdb) pi gdb.selected_thread().inferior
    <gdb.Inferior object at 0x7f1952bea698>
    (gdb) pi gdb.selected_thread().inferior
    Python Exception <type 'exceptions.AttributeError'> 'NoneType' object
    has no attribute 'inferior':
    Error while executing Python code.
    (gdb) info threads
      Id   Target Id         Frame
    * 1    Thread 0x7f54f0474740 (LWP 584) "mc" 0x00007f54ef055c33 in

commit d91f0b20e561e326ee91a09a76206257bde8438b
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Oct 28 21:31:16 2017 +1030

    PR22361 readelf buffer overflow on fuzzed archive header
    
    	PR 22361
    	* readelf.c (process_archive_index_and_symbols): Ensure ar_size
    	field is zero terminated for strtoul.
    	(setup_archive, get_archive_member_name): Likewise.

commit c0e331c794d6bd75d9be9bea6145513074c33f39
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Oct 28 14:10:55 2017 +1030

    PR22300, Abort in elf32_hppa_relocate_section building polyml
    
    polyml produces object files with the wrong OS/ABI for hppa-linux.
    This, along with the fact that elf32-hppa.c is using the strictest
    backend relocs_compatible, results in wrong merging of ELF symbols.
    
    So, remove the relocs_compatible check in _bfd_elf_merge_symbol.
    _bfd_elf_merge_symbol is only called nowadays from within blocks
    protected by is_elf_hash_table, so "we are doing an ELF link" as the
    removed comment says, is true.
    
    Also relax relocs_compatible for hppa and powerpc.  relocs_compatible
    is used for more than just merging symbols, as the name suggests.
    This allows objects that are in fact reasonably compatible to be
    linked.
    
    	PR 22300
    	* elflink.c (_bfd_elf_merge_symbol): Remove relocs_compatible check.
    	* elf32-hppa.c (elf_backend_relocs_compatible): Define.
    	* elf32-ppc.c (elf_backend_relocs_compatible): Define.
    	* elf64-ppc.c (elf_backend_relocs_compatible): Define.

commit bac608e7e11fa83a648c0980883f810ebd1874b1
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 23:44:12 2017 -0400

    Remove find_inferior usage for thread_search
    
    Replace it with for_each_thread.  While at it, we can inline the
    callback code.  One little change is that I am using the
    prev_general_thread variable instead of current_gen_ptid, since they
    should have the same value.
    
    gdb/gdbserver/ChangeLog:
    
    	* target.c (struct thread_search): Remove.
    	(thread_search_callback): Remove.
    	(prepare_to_access_memory): Use for_each_thread instead of
    	find_inferior.  Inline code from thread_search_callback.

commit eaddb425928bb4ae21c0c6644b4bedf3d16cb6fa
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 23:43:11 2017 -0400

    Remove usage of find_inferior in resume
    
    Change find_inferior with find_thread.  Since we can now pass arguments
    directly instead of through a void pointer, we don't need the
    visit_actioned_threads_data structure anymore.
    
    gdb/gdbserver/ChangeLog:
    
    	* server.c (struct visit_actioned_threads_data): Remove.
    	(visit_actioned_threads): Change prototype to take arguments
    	directly.
    	(resume): Use find_thread instead of find_inferior.

commit 99078d344db25efc376877e0e4c95157f0c36c60
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 23:41:49 2017 -0400

    Remove usages of find_inferior in handle_status
    
    Replace one with find_thread, the other with for_each_thread.
    
    gdb/gdbserver/ChangeLog:
    
    	* server.c (queue_stop_reply_callback): Change prototype, return
    	void.
    	(find_status_pending_thread_callback): Remove.
    	(handle_status): Replace find_inferior with find_thread and
    	for_each_thread.

commit b5540b5f2b9cd5fcbac6504359b856d3f43267b5
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 23:36:19 2017 -0400

    common-utils-selftests.c: Add ATTRIBUTE_PRINTF
    
    Fix this, when building with clang:
    
    /home/emaisin/src/binutils-gdb/gdb/unittests/common-utils-selftests.c:50:40: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
      std::string result = string_vprintf (fmt, vp);
                                           ^~~
    gdb/ChangeLog:
    
    	* unittests/common-utils-selftests.c (format): Add
    	ATTRIBUTE_PRINTF.

commit 5a9dcda14c240eccee5c1de53cf4ae936230ed0c
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Oct 27 22:23:33 2017 -0400

    C++ify xml-syscall.c
    
    This patch C++ifies the structures in xml-syscall.c, by using
    std::vector instead of VEC, and std::string instead of char*.
    Using a unique_ptr in syscall_parse_xml allows to remove a cleanup.
    
    Something that seems strange with the existing code, if you look at
    syscalls_info_free_syscalls_desc and
    syscalls_info_free_syscall_group_desc, they free the structure elements
    (the strings and vectors), but they don't free the syscall_desc and
    syscall_group_desc structure themselves.  I don't see anything freeing
    those currently.  Any idea why?  According to the comment above
    syscalls_info_free_syscall_group_desc, it kinda looks like it's on
    purpose.  With this patch, those structures are deleted when the vector
    that contains them gets deleted.
    
    The only time I'm aware a syscalls_info structure gets deleted is in the
    case the data directory changes during runtime, in init_syscalls_info.
    If tried that use case (including under valgrind):
    
     (gdb) catch syscall
     (gdb) set data-directory another-data-directory
     (gdb) catch syscall
    
    I confirmed that the syscalls_info structure got deleted and recreated,
    and everything seemed fine.
    
    Regtested on the buildbot.
    
    gdb/ChangeLog:
    
    	* xml-syscall.c (struct syscall_desc): Add constructor.
    	<name>: Change type to std::string.
    	(syscall_desc_up): New typedef.
    	(syscall_desc_p): Remove typeder.
    	(DEF_VEC_P(syscall_desc_p)): Remove.
    	(struct syscall_group_desc): Add constructor.
    	<name>: Change type to std::string.
    	<syscalls>: Change type to std::vector.
    	(syscall_group_desc_up): New typedef.
    	(syscall_group_desc_p): Remove typedef.
    	(DEF_VEC_P(syscall_group_desc_p)): Remove.
    	(struct syscalls_info) <syscalls>: Change type to std::vector of
    	unique_ptr.
    	<groups>: Likewise.
    	<my_gdb_datadir>: Change type to std::string.
    	(syscalls_info_up): New typedef.
    	(allocate_syscalls_info): Remove.
    	(syscalls_info_free_syscalls_desc): Remove.
    	(syscalls_info_free_syscall_group_desc): Remove.
    	(free_syscalls_info): Remove.
    	(make_cleanup_free_syscalls_info): Remove.
    	(syscall_group_create_syscall_group_desc): Adjust.
    	(syscall_group_add_syscall): Adjust.
    	(syscall_create_syscall_desc): Adjust.
    	(syscall_parse_xml): Adjust, use unique_ptr instead of cleanup.
    	(init_syscalls_info): Adjust.
    	(syscall_group_get_group_by_name): Adjust.
    	(xml_get_syscall_number): Adjust.
    	(xml_get_syscall_name): Adjust.
    	(xml_list_of_syscalls): Adjust.
    	(xml_list_syscalls_by_group): Adjust.
    	(xml_list_of_groups): Adjust.

commit 45461e0dcaf4193b5b4478031f515ffb7911ad85
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 22:05:42 2017 -0400

    Get rid of VEC(probe_p)
    
    Replace the remaining usages of VEC(probe_p) with std::vector.
    
    Regtested on the buildbot.
    
    gdb/ChangeLog:
    
    	* probe.h: Don't include gdb_vecs.h.
    	(DEF_VEC_P (probe_p)): Remove.
    	(find_probes_in_objfile): Return an std::vector.
    	* probe.c (find_probes_in_objfile): Likewise.
    	* breakpoint.c (breakpoint_objfile_data)
    	<longjmp_probes>: Change type to std::vector.
    	<exception_probes>: Likewise.
    	(free_breakpoint_probes): Don't manually free vectors.
    	(create_longjmp_master_breakpoint): Adjust.
    	(create_exception_master_breakpoint): Adjust.
    	* solib-svr4.c (svr4_create_probe_breakpoints): Change
    	parameter type, adjust.
    	(svr4_create_solib_event_breakpoints): Adjust.

commit 43dce4394513d15ba8122c3bf442ec1028d93feb
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 22:01:21 2017 -0400

    Allocate breakpoint_objfile_data with new
    
    Allocate with new and free with delete.  This allows using an
    std::vector in the following patch.
    
    I renamed free_breakpoint_probes to free_breakpoint_objfile_data,
    because it now doesn't only free the probes vector, but also the
    breakpoint_objfile_data structure itself.
    
    gdb/ChangeLog:
    
    	* breakpoint.c (breakpoint_objfile_data): Initialize fields.
    	(get_breakpoint_objfile_data): Allocate breakpoint_objfile_data
    	with new.
    	(free_breakpoint_probes): Rename to ...
    	(free_breakpoint_objfile_data): ... this, and call delete on
    	bp_objfile_data..

commit 6a1b9516d824a4d364040887455ba910f955f065
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Oct 27 21:55:42 2017 -0400

    Get rid of VEC(loaded_script_ptr)
    
    Direct replacement with std::vector.  This allows removing a cleanup as
    well.
    
    Regtested on the buildbot.
    
    gdb/ChangeLog:
    
    	* auto-load.c: Don't include gdb_vecs.h, include algorithm.
    	(loaded_script_ptr): Remove typedef.
    	(DEF_VEC_P (loaded_script_ptr)): Remove.
    	(struct collect_matching_scripts_data): Add constructor.
    	<scripts_p>: Change type to (pointer to) std::vector.
    	(collect_matching_scripts_data): Adjust.
    	(sort_scripts_by_name): Make suitable for std::sort.
    	(print_scripts): Don't sort vector, adjust to std::vector.
    	(auto_load_info_scripts): Sort vectors, adjust to std::vector.

commit 593e3209f3e4e525030bc8768850f3876fd0b850
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 21:47:30 2017 -0400

    Get rid of VEC(filename_language)
    
    This patch removes VEC(filename_language), replacing its usage with
    std::vector.  filename_language::ext is changed to an std::string at the
    same time.
    
    Regtested on the buildbot.
    
    gdb/ChangeLog:
    
    	* symfile.c (filename_language): Make struct, not typedef.  Add
    	constructor.
    	<ext>: Change type to std::string.
    	(DEF_VEC_O (filename_language)): Remove.
    	(filename_language_table): Change type to std::vector.
    	(add_filename_language): Adjust.
    	(set_ext_lang_command): Adjust.
    	(info_ext_lang_command): Adjust.
    	(deduce_language_from_filename): Adjust.
    	(class scoped_restore_filename_language_table): Remove.
    	(test_filename_language): Use scoped_restore.
    	(test_set_ext_lang_command): Use scoped_restore, adjust to
    	std::vector change.

commit 32fa66eb88d029576cfd8f5698d0579662d2f045
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 21:46:49 2017 -0400

    Add tests for filename_language
    
    The next patch touches the filename_language area, but I noticed there
    is no test exercising that.  This patch adds some selftests for
    add_filename_language, deduce_language_from_filename and
    set_ext_lang_command.  Because these tests add entries to the global
    filename_language_table vector, it is not possible to run them
    successfully multiple times in a same GDB instance.  They can
    potentially interfere with each other for the same reason.  I therefore
    added the scoped_restore_filename_language_table class that is used to
    make sure tests leave that global vector in the same state they found it
    (it is replaced in the following patch by a simple scoped_restore).
    
    gdb/ChangeLog:
    
    	* symfile.c: Include selftest.h.
    	(class scoped_restore_filename_language_table): New.
    	(test_filename_language): New test.
    	(test_set_ext_lang_command): New test.
    	(_initialize_symfile): Register tests.

commit af5f32f82b0ece140641484d8178ead655f8a0a5
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Sat Oct 28 00:00:30 2017 +0000

    Automatic date update in version.in

commit 4a27f119f59a44395e0a34b1526cee709e1d3fce
Author: Keith Seitz <keiths@redhat.com>
Date:   Fri Oct 27 10:57:23 2017 -0700

    Use SaL symbol name when reporting breakpoint locations
    
    Currently, "info break" can show some (perhaps) unexpected results when
    setting a breakpoint on an inlined function:
    
    (gdb) list
    1	#include <stdio.h>
    2
    3	static inline void foo()
    4	{
    5	        printf("Hello world\n");
    6	}
    7
    8	int main()
    9	{
    10	        foo();
    11	        return 0;
    12	}
    13
    (gdb) b foo
    Breakpoint 1 at 0x400434: file foo.c, line 5.
    (gdb) i b
    Num     Type           Disp Enb Address            What
    1       breakpoint     keep y   0x0000000000400434 in main at foo.c:5
    
    GDB reported that we understood what "foo" was, but we then report that the
    breakpoint is actually set in main. While that is literally true, we can
    do a little better.
    
    This is accomplished by copying the symbol for which the breakpoint was set
    into the bp_location.  From there, print_breakpoint_location can use this
    information to print out symbol information (if available) instead of calling
    find_pc_sect_function.
    
    With the patch installed,
    
    (gdb) i b
    Num     Type           Disp Enb Address            What
    1       breakpoint     keep y   0x0000000000400434 in foo at foo.c:5
    
    gdb/ChangeLog:
    
    	* breakpoint.c (print_breakpoint_location): Use the symbol saved
    	in the bp_location, falling back to find_pc_sect_function when
    	needed.
    	(add_location_to_breakpoint): Save sal->symbol.
    	* breakpoint.h (struct bp_location) <symbol>: New field.
    	* symtab.c (find_function_start_sal): Save the symbol into the SaL.
    	* symtab.h (struct symtab_and_line) <symbol>: New field.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.opt/inline-break.exp (break_info_1): New procedure.
    	Test "info break" for every inlined function breakpoint.

commit bb11dd58391459bd5ba54ec405adab663ac59e89
Author: Yao Qi <yao.qi@linaro.org>
Date:   Fri Oct 27 15:29:24 2017 +0100

    [AArch64] Mark LR clobbered by BL in inline asm
    
    LR is a caller-save register, so, if inline asm does BL (which touches
    LR), we should mark LR clobbered.
    
    gdb/testsuite:
    
    2017-10-27  Yao Qi  <yao.qi@linaro.org>
    
    	* gdb.arch/insn-reloc.c (can_relocate_bl): Mark "x30" clobbered.

commit 32ef30002cee3661eb645cd14bcc4ff77ea10f45
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 09:01:36 2017 -0400

    dwarf: Read register number as unsigned in DW_CFA_def_cfa*
    
    When displaying the .debug_frame section, the register numbers in the
    DW_CFA_def_cfa* statements are read as signed numbers.  I have come
    across a target that has register 121, encoded as 0x79 in unsigned LEB128.
    Interpreting this as signed results in -7, which makes readelf display
    "r-7".
    
    The DWARF5 standard (6.4.2.2) states that the register numbers should be
    treated as unsigned LEB128.
    
    Simply replacing READ_SLEB with READ_ULEB resulted in warnings like
    these:
    
    /home/emaisin/src/binutils-gdb/binutils/dwarf.c: In function ‘display_debug_frames’:
    /home/emaisin/src/binutils-gdb/binutils/dwarf.c:355:17: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
           if ((var) != _val)     \
                     ^
    /home/emaisin/src/binutils-gdb/binutils/dwarf.c:7866:8: note: in expansion of macro ‘READ_ULEB’
            READ_ULEB (fc->cfa_reg);
            ^
    ... so I also changed Frame_Chunk::cfa_reg to an unsigned int.
    
    binutils/ChangeLog:
    
    	* dwarf.c (struct Frame_Chunk) <cfa_reg>: Change type to
    	unsigned int.
    	(display_debug_frames): Read CFA reg as an unsigned number.

commit 7453e6b2ea451dfba68cf4442e58706d51f88411
Author: Simon Marchi <simon.marchi@ericsson.com>
Date:   Fri Oct 27 08:57:10 2017 -0400

    Add PR mention to previous commit

commit a43f3893f6cb66dfca7f628cd159a008009ad06f
Author: Patrick Frants <osscontribute@gmail.com>
Date:   Thu Oct 26 22:26:08 2017 -0400

    Fix broken recursion detection when printing static members
    
    Recursion detection for static members was broken.  The implementation
    uses a growing (and shrinking) obstack object to simulate a stack of
    addresses (CORE_ADDR).  Pushing addresses is implemented by calling
    obstack_grow(), while popping is implemented by calling obstack_free().
    The latter is problematic because obstack_free() expects a pointer to
    the base of an object.  When popping elements of the stack however,
    obstack_free() was called with the new top, which potentially is not the
    same as the base of the stack.  This is unintended use and the effect is
    that obstack->next_free and obstack->object_base members are assigned
    the value of the new top, which equals an empty stack.  Summary: popping
    elements would always result in an empty stack, which breaks the
    recursion detection.
    
    The fix shrinks the stack using obstack_blank_fast() with a negative
    value as described at the bottom of this page:
    https://gcc.gnu.org/onlinedocs/libiberty/Extra-Fast-Growing.html "You
    can use obstack_blank_fast with a “negative” size argument to make the
    current object smaller.  Just don’t try to shrink it beyond zero
    length—there’s no telling what will happen if you do that. Earlier
    versions of obstacks allowed you to use obstack_blank to shrink objects.
    This will no longer work."
    
    The reproducer is added to gdb.cp/classes.exp, which fails without this
    patch.
    
    gdb/ChangeLog:
    
    	* cp-valprint.c (cp_print_value_fields): Use obstack_blank_fast
    	to rewind obstack.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.cp/classes.exp (test_static_members): Test printing
    	Outer::instance.
    	* gdb.cp/classes.c (struct Inner, struct Outer): New.
    	(Inner::instance, Outer::instance): New.

commit 95904ac43c21694a609b4b8016b7fdfe8c2fc0fb
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Fri Oct 27 00:00:28 2017 +0000

    Automatic date update in version.in

commit 23cc4e1b28d445e23827a09c454aa806f2b8c720
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Oct 26 19:53:03 2017 +0100

    Garbage collect remote.c:remote_async_terminal_ours_p
    
    remote.c:remote_async_terminal_ours_p stopped being useful after
    048094accce2 ("target remote: Don't rely on immediate_quit (introduce
    quit handlers)") and commit 41fd2b0f5d95 ("Make input_fd be per UI"),
    which turned remote's terminal_inferior/ours methods into nops.
    
    gdb/ChangeLog:
    2017-10-26  Pedro Alves  <palves@redhat.com>
    
    	* remote.c (remote_async_terminal_ours_p): Delete.
    	(remote_open_1, remote_terminal_inferior, remote_terminal_ours):
    	Remove references to 'remote_async_terminal_ours_p'.

commit 514f60231cb5a0a070712729a7c29447cae86453
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Oct 26 11:16:41 2017 -0700

    x86: Check invalid XMM register in AVX512 gathers
    
    Extend invalid register check for AVX512 gathers to XMM register.
    
    	PR gas/22352
    	* config/tc-i386.c (check_VecOperands): Also check XMM register
    	for invalid register in AVX512 gathers.
    	* testsuite/gas/i386/vgather-check.s: Add tests for AVX512
    	gathers with XMM register.
    	* testsuite/gas/i386/x86-64-vgather-check.s: Likewise.
    	* testsuite/gas/i386/vgather-check-error.l: Updated.
    	* testsuite/gas/i386/vgather-check-none.d: Likewise.
    	* testsuite/gas/i386/vgather-check-warn.d: Likewise.
    	* testsuite/gas/i386/vgather-check-warn.e: Likewise.
    	* testsuite/gas/i386/vgather-check.d: Likewise.
    	* testsuite/gas/i386/x86-64-vgather-check-error.l: Likewise.
    	* testsuite/gas/i386/x86-64-vgather-check-none.d: Likewise.
    	* testsuite/gas/i386/x86-64-vgather-check-warn.d: Likewise.
    	* testsuite/gas/i386/x86-64-vgather-check-warn.e: Likewise.
    	* testsuite/gas/i386/x86-64-vgather-check.d: Likewise.

commit 506981afaf6c77fbc26bcdc2eb4c24edca4255ef
Author: Renlin Li <renlin.li@arm.com>
Date:   Thu Oct 26 15:40:45 2017 +0100

    [PR21703]Adjust pr21703 tests on various targets.
    
    xfail tests for certain targets.
    Check shared library support for shared test.
    Relax pr21703-r.sd and pr21703-shared.sd with additional "#..." pattern lines.
    
    ld/
    
    	* testsuite/ld-elf/elf.exp: xfail pr21703 tests on specific targets.
    	Only run shared lib test for targets which support it.
    	* testsuite/ld-elf/pr21703-r.sd: Adjust the expected output.
    	* testsuite/ld-elf/pr21703-shared.sd: Likewise.

commit 4062f504eba4835579bcc360e9eff3e7d92f5a6c
Author: James Greenhalgh <james.greenhalgh@arm.com>
Date:   Thu Oct 26 11:30:40 2017 +0100

    As Alan predicted at https://sourceware.org/ml/binutils/2017-10/msg00137.html the values in some Arm tests need updating after recent changes. These looked a bit spooky at first, but they are just a difference in the order we emit veneers and far jumps, so are not so scary after all.
    
    Checked with an arm-none-eabi tester and an arm-none-linux-gnueabi tester with no issues.
    
    	* testsuite/ld-arm/cortex-a8-far.d: Update expected disassembly.
    	* testsuite/ld-arm/farcall-group-size2: Likewise.
    	* testsuite/ld-arm/farcall-group.d: Likewise.

commit 6abc18bbbf03dc4aee0b0f2cd851d9bc9a983e20
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Oct 26 09:53:38 2017 +0100

    Remove regular_breakpoint_inserted_here_p declaration
    
    There is no regular_breakpoint_inserted_here_p definition at all, so
    this patch removes the declaration.
    
    gdb:
    
    2017-10-26  Yao Qi  <yao.qi@linaro.org>
    
    	* breakpoint.h (regular_breakpoint_inserted_here_p): Remove.

commit bd5225139c83a80aad542e46efb66fabf51bff91
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Oct 26 09:46:16 2017 +0100

    const-fy breakpoint_ops->breakpoint_hit parameter aspace
    
    gdb:
    
    2017-10-26  Yao Qi  <yao.qi@linaro.org>
    
    	* break-catch-sig.c (signal_catchpoint_breakpoint_hit): Make
    	aspace const.
    	* break-catch-syscall.c (breakpoint_hit_catch_syscall):
    	Likewise.
    	* breakpoint.c (bpstat_check_location): Remove cast.
    	(breakpoint_hit_catch_fork): Make aspce const.
    	(breakpoint_hit_catch_solib): Likewise.
    	(breakpoint_hit_catch_exec): Likewise.
    	(breakpoint_hit_ranged_breakpoint): Likewise.
    	(breakpoint_hit_watchpoint): Likewise.
    	(base_breakpoint_breakpoint_hit): Likewise.
    	(bkpt_breakpoint_hit): Likewise.
    	(dprintf_breakpoint_hit): Likewise.
    	(tracepoint_breakpoint_hit): Likewise.
    	* breakpoint.h (breakpoint_ops) <breakpoint_hit>: Likewise.

commit accd0bcdfe6914193bba8dec9e6311e608b5c498
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Oct 26 09:46:16 2017 +0100

    const-fy function parameter struct address_space *aspace
    
    This patch changes the parameter "struct address_space *aspace" to "const
    address_space *aspace" in many functions.
    
    gdb:
    
    2017-10-26  Yao Qi  <yao.qi@linaro.org>
    
    	* breakpoint.c (breakpoint_location_address_match): Change
    	"struct address_space *" to "const address_space".
    	(breakpoint_location_address_range_overlap): Likewise.
    	(breakpoint_here_p): Likewise.
    	(breakpoint_in_range_p): Likewise.
    	(moribund_breakpoint_here_p): Likewise.
    	(bp_location_inserted_here_p): Likewise.
    	(software_breakpoint_inserted_here_p): Likewise.
    	(hardware_breakpoint_inserted_here_p): Likewise.
    	(hardware_watchpoint_inserted_in_range): Likewise.
    	(bpstat_check_location): Likewise.
    	(bpstat_stop_status): Likewise.
    	(breakpoint_address_match): Likewise.
    	(breakpoint_address_match_range): Likewise.
    	(breakpoint_location_address_match): Likewise.
    	(breakpoint_location_address_range_overlap): Likewise.
    	(insert_single_step_breakpoint): Likewise.
    	(breakpoint_has_location_inserted_here): Likewise.
    	(single_step_breakpoint_inserted_here_p): Likewise.
    	(pc_at_non_inline_function): Likewise.
    	* breakpoint.h (bpstat_stop_status): Update declaration.
    	(breakpoint_here_p): Likewise.
    	(breakpoint_in_range_p): Likewise.
    	(moribund_breakpoint_here_p): Likewise.
    	(breakpoint_inserted_here_p): Likewise.
    	(software_breakpoint_inserted_here_p): Likewise.
    	(hardware_breakpoint_inserted_here_p): Likewise.
    	(breakpoint_has_location_inserted_here): Likewise.
    	(single_step_breakpoint_inserted_here_p): Likewise.
    	(hardware_watchpoint_inserted_in_range): Likewise.
    	(breakpoint_address_match): Likewise.
    	(insert_single_step_breakpoint): Likewise.
    	(pc_at_non_inline_function): Likewise.
    	* gdbthread.h (thread_has_single_step_breakpoint_here): Likewise.
    	* record.c (record_check_stopped_by_breakpoint): Likewise.
    	* record.h (record_check_stopped_by_breakpoint): Likewise.
    	* thread.c (thread_has_single_step_breakpoint_here): Likewise.

commit ca3e4ea52d21c5f48e12c302179daae80e5cd420
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Thu Oct 26 00:00:22 2017 +0000

    Automatic date update in version.in

commit 238c141b9807b43a0b04923dee64ba87df79e698
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date:   Thu Oct 26 01:11:06 2017 +0200

    testsuite/gas/all/fill-1.s: Use L2 rather than .L2.
    
    For some targets, like mmix-knuth-mmixware, .L2 (and .L1) are invalid
    symbols.

commit 8df93cb5652730d99242e7de86679d3930a2a1b6
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Oct 25 08:44:54 2017 -0700

    ld: Correct -z ibt documentation
    
    	* ld.texinfo: Correct -z ibt.

commit ac7936dfd0c85e5de2dfec45ca0dbf72baeffa51
Author: Yao Qi <yao.qi@linaro.org>
Date:   Wed Oct 25 16:37:03 2017 +0100

    s/get_regcache_arch (regcache)/regcache->arch ()/g
    
    This patches removes get_regcache_arch, and use regache->arch () instead.
    The motivation of this change is that I am going to move some basic stuff
    into a base class of regcache.  I don't need to update "client" code
    regcache->arch ().  On the other hand, this patch shortens the code a
    little bit.
    
    gdb:
    
    2017-10-25  Yao Qi  <yao.qi@linaro.org>
    
    	* aarch32-linux-nat.c (aarch32_gp_regcache_supply): Use
    	regcache->arch () instead get_regcache_arch.
    	* aarch64-fbsd-nat.c (aarch64_fbsd_fetch_inferior_registers):
    	Likewise.
    	(aarch64_fbsd_store_inferior_registers): Likewise.
    	* aarch64-linux-nat.c (fetch_gregs_from_thread): Likewise.
    	(store_gregs_to_thread): Likewise.
    	(fetch_fpregs_from_thread): Likewise.
    	(store_fpregs_to_thread): Likewise.
    	* aarch64-tdep.c (aarch64_extract_return_value): Likewise.
    	(aarch64_store_return_value): Likewise.
    	(aarch64_software_single_step): Likewise.
    	* aix-thread.c (aix_thread_wait): Likewise.
    	(supply_reg32): Likewise.
    	(supply_sprs64): Likewise.
    	(supply_sprs32): Likewise.
    	(fill_gprs64): Likewise.
    	(fill_gprs32): Likewise.
    	(fill_sprs64): Likewise.
    	(fill_sprs32): Likewise.
    	(store_regs_user_thread): Likewise.
    	(store_regs_kernel_thread): Likewise.
    	* alpha-bsd-nat.c (alphabsd_fetch_inferior_registers): Likewise.
    	(alphabsd_store_inferior_registers): Likewise.
    	* alpha-tdep.c (alpha_extract_return_value): Likewise.
    	(alpha_store_return_value): Likewise.
    	(alpha_deal_with_atomic_sequence): Likewise.
    	(alpha_next_pc): Likewise.
    	(alpha_software_single_step): Likewise.
    	* amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise.
    	(amd64bsd_store_inferior_registers): Likewise.
    	* amd64-linux-nat.c (amd64_linux_fetch_inferior_registers):
    	Likewise.
    	(amd64_linux_store_inferior_registers): Likewise.
    	* amd64-nat.c (amd64_supply_native_gregset): Likewise.
    	(amd64_collect_native_gregset): Likewise.
    	* amd64-obsd-tdep.c (amd64obsd_supply_uthread): Likewise.
    	(amd64obsd_collect_uthread): Likewise.
    	* amd64-tdep.c (amd64_supply_fpregset): Likewise.
    	(amd64_collect_fpregset): Likewise.
    	(amd64_supply_fxsave): Likewise.
    	(amd64_supply_xsave): Likewise.
    	(amd64_collect_fxsave): Likewise.
    	(amd64_collect_xsave): Likewise.
    	* arc-tdep.c (arc_write_pc): Likewise.
    	* arch-utils.c (default_skip_permanent_breakpoint): Likewise.
    	* arm-fbsd-nat.c (arm_fbsd_fetch_inferior_registers): Likewise.
    	(arm_fbsd_store_inferior_registers): Likewise.
    	* arm-linux-nat.c (fetch_vfp_regs): Likewise.
    	(store_vfp_regs): Likewise.
    	(arm_linux_fetch_inferior_registers): Likewise.
    	(arm_linux_store_inferior_registers): Likewise.
    	* arm-linux-tdep.c (arm_linux_supply_gregset): Likewise.
    	(arm_linux_sigreturn_next_pc): Likewise.
    	(arm_linux_get_next_pcs_syscall_next_pc): Likewise.
    	* arm-nbsd-nat.c (arm_supply_gregset): Likewise.
    	(fetch_register): Likewise.
    	(store_register): Likewise.
    	* arm-tdep.c (arm_is_thumb): Likewise.
    	(displaced_in_arm_mode): Likewise.
    	(bx_write_pc): Likewise.
    	(arm_get_next_pcs_addr_bits_remove): Likewise.
    	(arm_software_single_step): Likewise.
    	(arm_extract_return_value): Likewise.
    	(arm_store_return_value): Likewise.
    	(arm_write_pc): Likewise.
    	* bfin-tdep.c (bfin_extract_return_value): Likewise.
    	* bsd-uthread.c (bsd_uthread_fetch_registers): Likewise.
    	(bsd_uthread_store_registers): Likewise.
    	* core-regset.c (fetch_core_registers): Likewise.
    	* corelow.c (get_core_registers): Likewise.
    	* cris-tdep.c (cris_store_return_value): Likewise.
    	(cris_extract_return_value): Likewise.
    	(find_step_target): Likewise.
    	(find_step_target): Likewise.
    	(cris_software_single_step): Likewise.
    	* ctf.c (ctf_fetch_registers): Likewise.
    	* darwin-nat.c (cancel_breakpoint): Likewise.
    	* fbsd-tdep.c (fbsd_collect_thread_registers): Likewise.
    	* frv-tdep.c (frv_extract_return_value): Likewise.
    	* ft32-tdep.c (ft32_store_return_value): Likewise.
    	(ft32_extract_return_value): Likewise.
    	* go32-nat.c (fetch_register): Likewise.
    	(go32_fetch_registers): Likewise.
    	(go32_store_registers): Likewise.
    	(store_register): Likewise.
    	* h8300-tdep.c (h8300_extract_return_value): Likewise.
    	(h8300_store_return_value): Likewise.
    	* hppa-linux-nat.c (fetch_register): Likewise.
    	(store_register): Likewise.
    	(hppa_linux_fetch_inferior_registers): Likewise.
    	(hppa_linux_store_inferior_registers): Likewise.
    	* i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Likewise.
    	(i386_darwin_store_inferior_registers): Likewise.
    	* i386-gnu-nat.c (gnu_fetch_registers): Likewise.
    	(gnu_store_registers): Likewise.
    	* i386-linux-nat.c (fetch_register): Likewise.
    	(store_register): Likewise.
    	(supply_gregset): Likewise.
    	(fill_gregset): Likewise.
    	(i386_linux_fetch_inferior_registers): Likewise.
    	(i386_linux_store_inferior_registers): Likewise.
    	(i386_linux_resume): Likewise.
    	* i386-linux-tdep.c (i386_linux_get_syscall_number_from_regcache):
    	Likewise.
    	* i386-nto-tdep.c (i386nto_supply_gregset): Likewise.
    	* i386-obsd-nat.c (i386obsd_supply_pcb): Likewise.
    	* i386-obsd-tdep.c (i386obsd_supply_uthread): Likewise.
    	(i386obsd_collect_uthread): Likewise.
    	* i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
    	(i386_supply_gregset): Likewise.
    	(i386_collect_gregset): Likewise.
    	(i386_supply_fpregset): Likewise.
    	(i386_collect_fpregset): Likewise.
    	(i386_mpx_bd_base): Likewise.
    	* i386-v4-nat.c	(supply_fpregset): Likewise.
    	(fill_fpregset): Likewise.
    	* i387-tdep.c (i387_supply_fsave): Likewise.
    	(i387_collect_fsave): Likewise.
    	(i387_supply_fxsave): Likewise.
    	(i387_collect_fxsave): Likewise.
    	(i387_supply_xsave): Likewise.
    	(i387_collect_xsave): Likewise.
    	* ia64-linux-nat.c (ia64_linux_fetch_registers): Likewise.
    	(ia64_linux_store_registers): Likewise.
    	* ia64-tdep.c (ia64_access_rse_reg): Likewise.
    	(ia64_extract_return_value): Likewise.
    	(ia64_store_return_value): Likewise.
    	(find_func_descr): Likewise.
    	* inf-child.c (inf_child_fetch_inferior_registers): Likewise.
    	* inf-ptrace.c (inf_ptrace_fetch_registers): Likewise.
    	(inf_ptrace_store_registers): Likewise.
    	* infrun.c (use_displaced_stepping): Likewise.
    	(displaced_step_prepare_throw): Likewise.
    	(resume): Likewise.
    	(proceed): Likewise.
    	(do_target_wait): Likewise.
    	(adjust_pc_after_break): Likewise.
    	(handle_inferior_event_1): Likewise.
    	(handle_signal_stop): Likewise.
    	(save_infcall_suspend_state): Likewise.
    	(restore_infcall_suspend_state): Likewise.
    	* iq2000-tdep.c (iq2000_extract_return_value): Likewise.
    	* jit.c (jit_frame_prev_register): Likewise.
    	* linux-nat.c (save_stop_reason): Likewise.
    	(linux_nat_wait_1): Likewise.
    	(resume_stopped_resumed_lwps): Likewise.
    	* linux-record.c (record_linux_sockaddr): Likewise.
    	(record_linux_msghdr): Likewise.
    	(record_linux_system_call): Likewise.
    	* linux-tdep.c (linux_collect_thread_registers): Likewise.
    	* lm32-tdep.c (lm32_extract_return_value): Likewise.
    	(lm32_store_return_value): Likewise.
    	* m32c-tdep.c (m32c_read_flg): Likewise.
    	(m32c_pseudo_register_read): Likewise.
    	(m32c_pseudo_register_write): Likewise.
    	* m32r-linux-tdep.c (m32r_linux_supply_gregset): Likewise.
    	(m32r_linux_collect_gregset): Likewise.
    	* m32r-tdep.c (m32r_store_return_value): Likewise.
    	(m32r_extract_return_value): Likewise.
    	* m68k-bsd-nat.c (m68kbsd_supply_fpregset): Likewise.
    	(m68kbsd_collect_fpregset): Likewise.
    	* m68k-bsd-tdep.c (m68kbsd_supply_fpregset): Likewise.
    	* m68k-linux-nat.c (fetch_register): Likewise.
    	(old_fetch_inferior_registers): Likewise.
    	(old_store_inferior_registers): Likewise.
    	(store_regs): Likewise.
    	* m68k-tdep.c (m68k_svr4_extract_return_value): Likewise.
    	(m68k_svr4_store_return_value): Likewise.
    	* m88k-tdep.c (m88k_store_arguments): Likewise.
    	* mi/mi-main.c (mi_cmd_data_list_changed_registers): Likewise.
    	(mi_cmd_data_write_register_values): Likewise.
    	* mips-fbsd-nat.c (mips_fbsd_fetch_inferior_registers): Likewise.
    	(mips_fbsd_store_inferior_registers): Likewise.
    	* mips-fbsd-tdep.c (mips_fbsd_supply_fpregs): Likewise.
    	(mips_fbsd_supply_gregs): Likewise.
    	(mips_fbsd_collect_fpregs): Likewise.
    	(mips_fbsd_collect_gregs): Likewise.
    	(mips_fbsd_supply_fpregset): Likewise.
    	(mips_fbsd_collect_fpregset): Likewise.
    	(mips_fbsd_supply_gregset): Likewise.
    	(mips_fbsd_collect_gregset): Likewise.
    	* mips-linux-nat.c (supply_gregset): Likewise.
    	(fill_gregset): Likewise.
    	(supply_fpregset): Likewise.
    	(fill_fpregset): Likewise.
    	* mips-linux-tdep.c (mips_supply_gregset): Likewise.
    	(mips_fill_gregset): Likewise.
    	(mips_supply_fpregset): Likewise.
    	(mips_fill_fpregset): Likewise.
    	(mips64_supply_gregset): Likewise.
    	(micromips_linux_sigframe_validate): Likewise.
    	* mips-nbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise.
    	(mipsnbsd_fetch_inferior_registers): Likewise.
    	(mipsnbsd_store_inferior_registers): Likewise.
    	* mips-nbsd-tdep.c (mipsnbsd_supply_fpregset): Likewise.
    	(mipsnbsd_supply_gregset): Likewise.
    	(mipsnbsd_iterate_over_regset_sections): Likewise.
    	(mipsnbsd_supply_reg): Likewise.
    	(mipsnbsd_supply_fpreg): Likewise.
    	* mips-tdep.c (mips_in_frame_stub): Likewise.
    	(mips_dummy_id): Likewise.
    	(is_octeon_bbit_op): Likewise.
    	(micromips_bc1_pc): Likewise.
    	(extended_mips16_next_pc): Likewise.
    	(mips16_next_pc): Likewise.
    	(deal_with_atomic_sequence): Likewise.
    	* moxie-tdep.c (moxie_process_readu): Likewise.
    	* nios2-tdep.c (nios2_get_next_pc): Likewise.
    	* nto-procfs.c (procfs_store_registers): Likewise.
    	* ppc-fbsd-nat.c (ppcfbsd_fetch_inferior_registers): Likewise.
    	(ppcfbsd_store_inferior_registers): Likewise.
    	* ppc-linux-nat.c (fetch_vsx_register): Likewise.
    	(fetch_altivec_register): Likewise.
    	(get_spe_registers): Likewise.
    	(fetch_spe_register): Likewise.
    	(fetch_altivec_registers): Likewise.
    	(fetch_all_gp_regs): Likewise.
    	(fetch_all_fp_regs): Likewise.
    	(store_vsx_register): Likewise.
    	(store_altivec_register): Likewise.
    	(set_spe_registers): Likewise.
    	(store_spe_register): Likewise.
    	(store_altivec_registers): Likewise.
    	(store_all_gp_regs): Likewise.
    	(store_all_fp_regs): Likewise.
    	* ppc-linux-tdep.c (ppc_linux_supply_gregset): Likewise.
    	(ppc_linux_collect_gregset): Likewise.
    	(ppc_canonicalize_syscall): Likewise.
    	(ppc_linux_record_signal): Likewise.
    	(ppu2spu_prev_register): Likewise.
    	* ppc-nbsd-nat.c (ppcnbsd_supply_pcb): Likewise.
    	* ppc-obsd-nat.c (ppcobsd_fetch_registers): Likewise.
    	(ppcobsd_store_registers): Likewise.
    	* ppc-ravenscar-thread.c (ppc_ravenscar_generic_fetch_registers):
    	Likewise.
    	(ppc_ravenscar_generic_store_registers): Likewise.
    	* procfs.c (procfs_fetch_registers): Likewise.
    	(procfs_store_registers): Likewise.
    	* ravenscar-thread.c (ravenscar_fetch_registers): Likewise.
    	(ravenscar_store_registers): Likewise.
    	(ravenscar_prepare_to_store): Likewise.
    	* record-btrace.c (record_btrace_fetch_registers): Likewise.
    	* record-full.c (record_full_wait_1): Likewise.
    	(record_full_registers_change): Likewise.
    	(record_full_store_registers): Likewise.
    	(record_full_core_fetch_registers): Likewise.
    	(record_full_save): Likewise.
    	(record_full_goto_insn): Likewise.
    	* regcache.c (regcache_register_size): Likewise.
    	(get_regcache_arch): Remove.
    	(regcache_read_pc): Likewise.
    	* regcache.h (get_regcache_arch): Remove.
    	* remote-sim.c (gdbsim_fetch_register): Likewise.
    	(gdbsim_store_register): Likewise.
    	* remote.c (fetch_register_using_p): Likewise.
    	(send_g_packet): Likewise.
    	(remote_prepare_to_store): Likewise.
    	(store_registers_using_G): Likewise.
    	* reverse.c (save_bookmark_command): Likewise.
    	(goto_bookmark_command): Likewise.
    	* rs6000-aix-tdep.c (branch_dest): Likewise.
    	* rs6000-nat.c (rs6000_ptrace64): Likewise.
    	(fetch_register): Likewise.
    	* rs6000-tdep.c (ppc_supply_reg): Likewise.
    	(ppc_collect_reg): Likewise.
    	(ppc_collect_gregset): Likewise.
    	(ppc_collect_fpregset): Likewise.
    	(ppc_collect_vsxregset): Likewise.
    	(ppc_collect_vrregset): Likewise.
    	(ppc_displaced_step_hw_singlestep): Likewise.
    	(rs6000_pseudo_register_read): Likewise.
    	(rs6000_pseudo_register_write): Likewise.
    	* s390-linux-nat.c (supply_gregset): Likewise.
    	(fill_gregset): Likewise.
    	(s390_linux_fetch_inferior_registers): Likewise.
    	* s390-linux-tdep.c (s390_write_pc): Likewise.
    	(s390_software_single_step): Likewise.
    	(s390_all_but_pc_registers_record): Likewise.
    	(s390_linux_syscall_record): Likewise.
    	* sentinel-frame.c (sentinel_frame_prev_arch): Likewise.
    	* sh-nbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise.
    	(shnbsd_store_inferior_registers): Likewise.
    	* sh-tdep.c (sh_extract_return_value_nofpu): Likewise.
    	(sh_extract_return_value_fpu): Likewise.
    	(sh_store_return_value_nofpu): Likewise.
    	(sh_corefile_supply_regset): Likewise.
    	(sh_corefile_collect_regset): Likewise.
    	* sh64-tdep.c (sh64_extract_return_value): Likewise.
    	(sh64_store_return_value): Likewise.
    	* sparc-linux-tdep.c (sparc32_linux_collect_core_fpregset): Likewise.
    	* sparc-nat.c (sparc_fetch_inferior_registers): Likewise.
    	(sparc_store_inferior_registers): Likewise.
    	* sparc-ravenscar-thread.c (register_in_thread_descriptor_p): Likewise.
    	(sparc_ravenscar_prepare_to_store): Likewise.
    	* sparc-tdep.c (sparc32_store_arguments): Likewise.
    	(sparc_analyze_control_transfer): Likewise.
    	(sparc_step_trap): Likewise.
    	(sparc_software_single_step): Likewise.
    	(sparc32_gdbarch_init): Likewise.
    	(sparc_supply_rwindow): Likewise.
    	(sparc_collect_rwindow): Likewise.
    	* sparc64-linux-tdep.c (sparc64_linux_collect_core_fpregset): Likewise.
    	* sparc64-nbsd-nat.c (sparc64nbsd_supply_gregset): Likewise.
    	(sparc64nbsd_collect_gregset): Likewise.
    	(sparc64nbsd_supply_fpregset): Likewise.
    	(sparc64nbsd_collect_fpregset): Likewise.
    	* sparc64-tdep.c (sparc64_store_arguments): Likewise.
    	(sparc64_supply_gregset): Likewise.
    	(sparc64_collect_gregset): Likewise.
    	(sparc64_supply_fpregset): Likewise.
    	(sparc64_collect_fpregset): Likewise.
    	* spu-linux-nat.c (spu_fetch_inferior_registers): Likewise.
    	* spu-tdep.c (spu_unwind_sp): Likewise.
    	(spu2ppu_prev_register): Likewise.
    	(spu_memory_remove_breakpoint): Likewise.
    	* stack.c (return_command): Likewise.
    	* tic6x-tdep.c (tic6x_extract_signed_field): Likewise.
    	* tracefile-tfile.c (tfile_fetch_registers): Likewise.
    	* tracefile.c (trace_save_ctf): Likewise.
    	* windows-nat.c (do_windows_fetch_inferior_registers): Likewise.
    	(do_windows_store_inferior_registers): Likewise.
    	(windows_resume): Likewise.
    	* xtensa-linux-nat.c (fill_gregset): Likewise.
    	(supply_gregset_reg): Likewise.
    	* xtensa-tdep.c (xtensa_register_write_masked): Likewise.
    	(xtensa_register_read_masked): Likewise.
    	(xtensa_supply_gregset): Likewise.
    	(xtensa_extract_return_value): Likewise.
    	(xtensa_store_return_value): Likewise.

commit edd079d9f6ca2f9ad21322b742269aec5de61190
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Wed Oct 25 15:32:23 2017 +0200

    Target FP: Use target format throughout expression parsing
    
    When parsing floating-point literals, the language parsers currently
    use parse_float or some equivalent routine to parse the input string
    into a DOUBLEST, which is then stored within a OP_DOUBLE expression
    node.  When evaluating the expression, the OP_DOUBLE is finally
    converted into a value in target format.
    
    On the other hand, *decimal* floating-point literals are parsed
    directly into target format and stored that way in a OP_DECFLOAT
    expression node.  In order to eliminate the DOUBLEST, this patch
    therefore unifies the handling of binary and decimal floating-
    point literals and stores them both in target format within a
    new OP_FLOAT expression node, replacing both OP_DOUBLE and
    OP_DECFLOAT.
    
    In order to store literals in target format, the parse_float
    routine needs to know the type of the literal.  All parsers
    therefore need to be changed to determine the appropriate type
    (e.g. by detecting suffixes) *before* calling parse_float,
    instead of after it as today.  However, this change is mostly
    straightforward -- again, this is already done for decimal FP
    today.
    
    The core of the literal parsing is moved into a new routine
    floatformat_from_string, mirroring floatformat_to_string.
    The parse_float routine now calls either floatformat_from_string
    or decimal_from_sting, allowing it to handle any type of FP
    literal.
    
    All language parsers need to be updated.  Some notes on
    specific changes to the various languages:
    
    - C: Decimal FP is now handled in parse_float, and no longer
      needs to be handled specially.
    
    - D: Straightforward.
    
    - Fortran: Still used a hard-coded "atof", also replaced by
      parse_float now.  Continues to always use builtin_real_s8
      as the type of literal, even though this is probably wrong.
    
    - Go: This used to handle "f" and "l" suffixes, even though
      the Go language actually doesn't support those.  I kept this
      support for now -- maybe revisit later.  Note the the GDB
      test suite for some reason actually *verifies* that GDB supports
      those unsupported suffixes ...
    
    - Pascal: Likewise -- this handles suffixes that are not
      supported in the language standard.
    
    - Modula-2: Like Fortran, used to use "atof".
    
    - Rust: Mostly straightforward, except for a unit-testing hitch.
      The code use to set a special "unit_testing" flag which would
      cause "rust_type" to always return NULL.  This makes it not
      possible to encode a literal into target format (which type?).
      The reason for this flag appears to have been that during
      unit testing, there is no "rust_parser" context set up, which
      means no "gdbarch" is available to use its types.  To fix this,
      I removed the unit_testing flag, and instead simply just set up
      a dummy rust_parser context during unit testing.
    
    - Ada: This used to check sizeof (DOUBLEST) to determine which
      type to use for floating-point literal.  This seems questionable
      to begin with (since DOUBLEST is quite unrelated to target formats),
      and in any case we need to get rid of DOUBLEST.  I'm now simply
      always using the largest type (builtin_long_double).
    
    gdb/ChangeLog:
    2017-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* doublest.c (floatformat_from_string): New function.
    	* doublest.h (floatformat_from_string): Add prototype.
    
    	* std-operator.def (OP_DOUBLE, OP_DECFLOAT): Remove, replace by ...
    	(OP_FLOAT): ... this.
    	* expression.h: Do not include "doublest.h".
    	(union exp_element): Replace doubleconst and decfloatconst by
    	new element floatconst.
    	* ada-lang.c (resolve_subexp): Handle OP_FLOAT instead of OP_DOUBLE.
    	(ada_evaluate_subexp): Likewise.
    	* eval.c (evaluate_subexp_standard): Handle OP_FLOAT instead of
    	OP_DOUBLE and OP_DECFLOAT.
    	* expprint.c (print_subexp_standard): Likewise.
    	(dump_subexp_body_standard): Likewise.
    	* breakpoint.c (watchpoint_exp_is_const): Likewise.
    
    	* parse.c: Include "dfp.h".
    	(write_exp_elt_dblcst, write_exp_elt_decfloatcst): Remove.
    	(write_exp_elt_floatcst): New function.
    	(operator_length_standard): Handle OP_FLOAT instead of OP_DOUBLE
    	and OP_DECFLOAT.
    	(operator_check_standard): Likewise.
    	(parse_float): Do not accept suffix.  Take type as input.  Return bool.
    	Return target format buffer instead of host DOUBLEST.
    	Use floatformat_from_string and decimal_from_string to parse
    	either binary or decimal floating-point types.
    	(parse_c_float): Remove.
    	* parser-defs.h: Do not include "doublest.h".
    	(write_exp_elt_dblcst, write_exp_elt_decfloatcst): Remove.
    	(write_exp_elt_floatcst): Add prototype.
    	(parse_float): Update prototype.
    	(parse_c_float): Remove.
    
    	* c-exp.y: Do not include "dfp.h".
    	(typed_val_float): Use byte buffer instead of DOUBLEST.
    	(typed_val_decfloat): Remove.
    	(DECFLOAT): Remove.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Update to new parse_float interface.
    	Parse suffixes and determine type before calling parse_float.
    	Handle decimal and binary FP types the same way.
    
    	* d-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
    	(FLOAT_LITERAL): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Update to new parse_float interface.
    	Parse suffixes and determine type before calling parse_float.
    
    	* f-exp.y: Replace dval by typed_val_float.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Use parse_float instead of atof.
    
    	* go-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
    	(parse_go_float): Remove.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Call parse_float instead of parse_go_float.
    	Parse suffixes and determine type before calling parse_float.
    
    	* p-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Update to new parse_float interface.
    	Parse suffixes and determine type before calling parse_float.
    
    	* m2-exp.y: Replace dval by byte buffer val.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	(parse_number): Call parse_float instead of atof.
    
    	* rust-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
    	(lex_number): Call parse_float instead of strtod.
    	(ast_dliteral): Use OP_FLOAT instead of OP_DOUBLE.
    	(convert_ast_to_expression): Handle OP_FLOAT instead of OP_DOUBLE.
    	Use write_exp_elt_floatcst.
    	(unit_testing): Remove static variable.
    	(rust_type): Do not check unit_testing.
    	(rust_lex_tests): Do not set uint_testing.  Set up dummy rust_parser.
    
    	* ada-exp.y (type_float, type_double): Remove.
    	(typed_val_float): Use byte buffer instead of DOUBLEST.
    	(FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
    	* ada-lex.l (processReal): Use parse_float instead of sscanf.

commit e5d70d6b5a5c2832ad199ac1b91f68324b4a12c9
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Oct 25 21:59:14 2017 +1030

    PR22348, conflicting global vars in crx and cr16
    
    include/
    	PR 22348
    	* opcode/cr16.h (instruction): Delete.
    	(cr16_words, cr16_allWords, cr16_currInsn): Delete.
    	* opcode/crx.h (crx_cst4_map): Rename from cst4_map.
    	(crx_cst4_maps): Rename from cst4_maps.
    	(crx_no_op_insn): Rename from no_op_insn.
    	(instruction): Delete.
    opcodes/
    	PR 22348
    	* cr16-dis.c (cr16_cinvs, instruction, cr16_currInsn): Make static.
    	(cr16_words, cr16_allWords, processing_argument_number): Likewise.
    	(imm4flag, size_changed): Likewise.
    	* crx-dis.c (crx_cinvs, NUMCINVS, instruction, currInsn): Likewise.
    	(words, allWords, processing_argument_number): Likewise.
    	(cst4flag, size_changed): Likewise.
    	* crx-opc.c (crx_cst4_map): Rename from cst4_map.
    	(crx_cst4_maps): Rename from cst4_maps.
    	(crx_no_op_insn): Rename from no_op_insn.
    gas/
    	PR 22348
    	* config/tc-crx.c (instruction, output_opcode): Make static.
    	(relocatable, ins_parse, cur_arg_num): Likewise.
    	(parse_insn): Adjust for renamed opcodes globals.
    	(check_range): Likewise

commit cc628f3dbb12c720dbc9ab714feeb197dc739944
Author: Alan Hayward <alan.hayward@arm.com>
Date:   Wed Oct 25 09:06:41 2017 +0100

    Add common AARCH64 REGNUM defines
    
    gdb/
    	* aarch64-tdep.h (enum aarch64_regnum): Remove.
    	* arch/aarch64.h: New file.
    
    gdbserver/
    	* linux-aarch64-low.c (aarch64_fill_gregset): Replace defines
    	with REGNO.
    	(aarch64_store_gregset): Likewise.
    	(aarch64_fill_fpregset): Likewise.
    	(aarch64_store_fpregset): Likewise.

commit e601d38b7cc222345d4128f45db18529b9fb477b
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Oct 25 15:32:52 2017 +1030

    Allow for __gnu_lto_slim prefixed with extra "_"
    
    Some targets prefix global symbols with "_".
    
    bfd/
    	* archive.c (_bfd_compute_and_write_armap): Match "__gnu_lto_slim"
    	optionally prefixed with "_".
    	* linker.c (_bfd_generic_link_add_one_symbol): Likewise.
    binutils/
    	* nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed
    	with "_".
    gold/
    	* symtab.cc (Symbol_table::add_from_relobj): Match "__gnu_lto_slim"
    	optionally prefixed with "_".
    ld/
    	* testsuite/ld-plugin/lto-3r.d: Match "__gnu_lto_v" optionally
    	prefixed with "_".
    	* testsuite/ld-plugin/lto-5r.d: Likewise.

commit 94092126a05ee625bf05d48cb331472b8f87d235
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Oct 25 15:31:58 2017 +1030

    Yet another fill-1 test fix
    
    tic4x fails due to being a 4 octets per byte target, while tic54x is 2
    octets per byte.
    
    mmix still fails with
    fill-1.s:4: Error: unknown pseudo-op: `.l1:'
    fill-1.s:6: Error: unknown pseudo-op: `.l2:'
    fill-1.s:3: Error: .space specifies non-absolute value
    
    and if the labels are changed to L1 and L2 then mep-elf fails with
    fill-1.s:3: Error: .space specifies non-absolute value
    
    Since both of those look like they ought to be investigated by the
    target maintainers, I'm tweaking the test to fail on both targets.
    
    	* testsuite/gas/all/fill-1.d: Exclude tic4x and tic54x.
    	* testsuite/gas/all/fill-1.s: Use L1 rather than .L1.

commit 711f5e559e8009f8033f3709d4fbe70c961a403a
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Wed Oct 25 00:00:26 2017 +0000

    Automatic date update in version.in

commit db283f44015de0ae0129688bf0e8e4e02672f6ea
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date:   Wed Oct 25 00:46:24 2017 +0200

    Fix format typos in previous previous ld/ChangeLog entry

commit 2e30886f1fa22fd28a1a91f5aae2ec033e2e54a9
Author: Hans-Peter Nilsson <hp@bitrange.com>
Date:   Wed Oct 25 00:45:05 2017 +0200

    testsuite/ld-riscv-elf/ld-riscv-elf.exp: Fix typo for istarget.

commit 792ccf005f391f46e295e250f285d040ab105ab7
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 23:22:56 2017 +0100

    Fix racy test in gdb.base/new-ui.exp
    
    I noticed gdb.base/new-ui.exp failing once here with:
    
     FAIL: gdb.base/new-ui.exp: do_test: delete all breakpoints on extra console (got interactive prompt)
     FAIL: gdb.base/new-ui.exp: do_test: main console: next causes no spurious output on other console
     FAIL: gdb.base/new-ui.exp: do_test: main console: breakpoint hit reported on other console
    
    The problem is 100% reproducible with check-read1:
      $ make check-read1 TESTS="gdb.*/new-ui.exp"
    
    testsuite/gdb.log shows:
      delete
      Delete all breakpoints? (y or n) [answered Y; input not from terminal]
      (gdb) FAIL: gdb.base/new-ui.exp: do_test: delete all breakpoints on extra console (got interactive prompt)
    
    This commit fixes the problem.
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/new-ui.exp (do_test): Split "delete all breakpoints on
    	extra console" test in two stages.

commit 63a25ea0de6d2f6d45b26af8d9c808aa35962256
Author: Andrew Waterman <andrew@sifive.com>
Date:   Thu Oct 19 11:21:44 2017 -0700

    RISC-V: Fix disassembly of c.addi4spn, c.addi16sp, c.lui when imm=0
    
    These are all invalid instructions, so they should not disassemble.
    
    opcodes/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * riscv-opc.c (match_c_addi16sp) : New function.
            (match_c_addi4spn): New function.
            (match_c_lui): Don't allow 0-immediate encodings.
            (riscv_opcodes) <addi>: Use the above functions.
            <add>: Likewise.
            <c.addi4spn>: Likewise.
            <c.addi16sp>: Likewise.
    
    gas/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * testsuite/gas/riscv/c-addi16sp-fail.d: New test.
            testsuite/gas/riscv/c-addi16sp-fail.l: Likewise.
            testsuite/gas/riscv/c-addi16sp-fail.s: Likewise.
            testsuite/gas/riscv/c-addi4spn-fail.d: Likewise.
            testsuite/gas/riscv/c-addi4spn-fail.l: Likewise.
            testsuite/gas/riscv/c-addi4spn-fail.s: Likewise.
            testsuite/gas/riscv/riscv.exp: Add new tests.

commit 09a7c6aa7a07f874f5357cde62b5753a10a5e107
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Tue Oct 24 18:34:41 2017 +0200

    Use const reference for decimal_from_string argument
    
    No functional change.
    
    gdb/ChangeLog:
    2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* dfp.h (decimal_from_string): Use const reference for argument.
    	* dfp.c (decimal_from_string): Likewise.

commit 8ba0dd515c1ba23318f28c6bb04c9da573855b50
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Tue Oct 24 18:01:39 2017 +0200

    Target FP printing: Use floatformat_to_string in tdep code
    
    A few tdep files use target-specific printing routines to output values in
    the floating-point registers.  To get rid of host floating-point code,
    this patch changes them to use floatformat_to_string instead.
    
    No functional change intended, the resulting output should look the same.
    
    ChangeLog:
    2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* i387-tdep.c (print_i387_value): Use floatformat_to_string.
    	* sh64-tdep.c (sh64_do_fp_register): Likewise.
    	* mips-tdep.c (mips_print_fp_register): Likewise.

commit 16e812b29e68c4a6fcad73b033716c4f385ce94f
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Tue Oct 24 18:00:50 2017 +0200

    Target FP printing: Simplify and fix ui_printf
    
    This patch adds support for handling format strings to both
    floatformat_to_string and decimal_to_string, and then uses
    those routines to implement ui_printf formatted printing.
    
    There is already a subroutine printf_decfloat that ui_printf uses to
    handle decimal FP.  This is renamed to printf_floating and updated
    to handle both binary and decimal FP.  This includes the following
    set of changes:
    
    - printf_decfloat currently parses the format string again to determine
      the intended target format.  This seems superfluous since the common
      parsing code in parse_format_string already did this, but then did
      not pass the result on to its users.  Fixed by splitting the decfloat_arg
      argument class into three distinct classes, and passing them through.
    
    - Now we can rename printf_decfloat to printf_floating and also call it
      for the argument classes representing binary FP types.
    
    - The code will now use the argclass to detect the type the value should
      be printed at, and converts the input value to this type if necessary.
      To remain compatible with current behavior, for binary FP the code
      instead tries to re-interpret the input value as a FP type of the
      same size if that exists.  (Maybe this behavior is more confusing
      than useful -- but this can be changed later if we want to ...)
    
    - Finally, we can use floatformat_to_string / decimal_to_string passing
      the format string to perform the formatted output using the desired
      target FP type.
    
    Note that we no longer generate different code depending on whether or not
    the host supports "long double" -- this check is obsolete anyway since C++11
    mandates "long double", and in any case a %lg format string is intended to
    refer to the *target* long double type, not the host version.
    
    Note also that formatted printing of DFP numbers may not work correctly,
    since it attempts to use the host printf to do so (and makes unwarranted
    assumptions about the host ABI while doing so!).  This is no change to
    the current behavior -- I simply moved the code from printf_decfloat to
    the decimal_to_string routine in dfp.c.  If we want to fix it in the
    future, that is a more appropriate place anyway.
    
    ChangeLog:
    2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* common/format.h (enum argclass): Replace decfloat_arg by
    	dec32float_arg, dec64float_arg, and dec128float_arg.
    	* common/format.c (parse_format_string): Update to return
    	new decimal float argument classes.
    
    	* printcmd.c (printf_decfloat): Rename to ...
    	(printf_floating): ... this.  Add argclass argument, and use it
    	instead of parsing the format string again.  Add support for
    	binary floating-point values, using floatformat_to_string.
    	Convert value to the target format if it doesn't already match.
    	(ui_printf): Call printf_floating instead of printf_decfloat,
    	also for double_arg / long_double_arg.  Pass argclass.
    
    	* dfp.c (decimal_to_string): Add format string argument.
    	* dfp.h (decimal_to_string): Likewise.
    
    	* doublest.c (floatformat_to_string): Add format string argument.
    	* doublest.h (floatformat_to_string): Likewise.

commit fdf0cbc2b710cb5e01249e18f5a377a55eddc39b
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Tue Oct 24 17:59:22 2017 +0200

    Target FP printing: Simplify and fix print_floating
    
    The print_floating routine currently makes a lot of assumptions about host
    and target floating point formats.  This patch cleans up many of those.
    
    One problem is that print_floating may currently be called with types
    that are not actually floating-point types, and it tries hard to output
    those as floating-point values anyway.  However, there is only one single
    caller of print_floating where this can ever happen: print_scalar_formatted.
    And in fact, it is much simpler to handle the case where the value to be
    printed is not already of floating-point type right there.
    
    So this patch changes print_scalar_formatted to handle the 'f' format
    as follows:
    
    - If the value to be printed is already of floating-point type, just
      call print_floating on it.
    
    - Otherwise, if there is a standard target floating-point type of
      the same size as the value, call print_floating using that type.
    
    - Otherwise, just print the value as if the 'f' format had not been
      specified at all.
    
    This has the overall effect to printing everything the same way as
    the old code did, but is overall a lot simpler.  (Also, it would
    allow us to change the above strategy more easily, if that might
    be a more intuitive user interface.  For example, in the third
    case above, maybe an error would be more appropriate?)
    
    Given that change, print_floating can become much simpler.  In particular,
    we now always have a floating-point format that we can consult.  This
    means we can use the floating-point format to programmatically determine
    the number of digits necessary to print the value.
    
    The current code uses a hard-coded value of 9, 17, or 35 digits.  Note
    that this matches the DECIMAL_DIG values for IEEE-32, IEEE-64, and
    IEEE-128.  (Actually, for IEEE-128 the correct value is 36 -- the 35
    seems to be an oversight.)  The DECIMAL_DIG value is defined to be
    the smallest number so that any number in the target format, when
    printed to this number of digits and then scanned back into a binary
    floating-point number, will result in the original value.
    
    Now that we always have a FP format, we can just compute the DECIMAL_DIG
    value using the formula from the C standard.  This will be correct for
    *all* FP formats, not just the above list, and it will be correct (as
    opposed to current code) if the target formats differ from the host ones.
    
    The patch moves the new logic to a new floatformat_to_string routine
    (analogous to the existing decimal_to_string).  The print_floating
    routine now calls floatformat_to_string or decimal_to_string, making
    the separate print_decimal_floating and generic_val_print_decfloat routines
    unnecessary.
    
    gdb/ChangeLog:
    2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* doublest.c (floatformat_precision): New routine.
    	(floatformat_to_string): Likewise.
    	* doublest.c (floatformat_to_string): Add prototype.
    
    	* printcmd.c (print_scalar_formatted): Only call print_floating
    	on floating-point types.
    	* valprint.c: Do not include "floatformat.h".
    	(generic_val_print_decfloat): Remove.
    	(generic_val_print): Call generic_val_print_float for both
    	TYPE_CODE_FLT and TYPE_CODE_DECFLOAT.
    	(print_floating): Use floatformat_to_string.  Handle decimal float.
    	(print_decimal_floating): Remove, merge into floatformat_to_string.
    	* value.h (print_decimal_floating): Remove.
    
    	* Makefile.in: Do not build doublest.c with -Wformat-nonliteral.

commit 3342be5dabeeaf2218dfbf4d38f92214612436f4
Author: Andrew Waterman <andrew@sifive.com>
Date:   Sat Sep 23 18:04:16 2017 -0700

    RISC-V: Only relax to C.LUI when imm != 0 and rd != 0/2
    
    This matches the ISA specification.  This also adds two tests: one to
    make sure the assembler rejects invalid 'c.lui's, and one to make sure
    we only relax valid 'c.lui's.
    
    bfd/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * elfnn-riscv.c (_bfd_riscv_relax_lui): Don't relax to c.lui
            when rd is x0.
    
    include/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * opcode/riscv.h (VALID_RVC_LUI_IMM): c.lui can't load the
            immediate 0.
    
    gas/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * testsuite/gas/riscv/c-lui-fail.d: New testcase.
            gas/testsuite/gas/riscv/c-lui-fail.l: Likewise.
            gas/testsuite/gas/riscv/c-lui-fail.s: Likewise.
            gas/testsuite/gas/riscv/riscv.exp: Likewise.
    
    ld/ChangeLog
    
    2017-10-24  Andrew Waterman  <andrew@sifive.com>
    
            * ld/testsuite/ld-riscv-elf/c-lui.d: New testcase.
            ld/testsuite/ld-riscv-elf/c-lui.s: Likewise.
            ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp: New test suite.

commit 3779bbe01b4ec1e5ae0a5c555f838999ba88ac50
Author: Palmer Dabbelt <palmer@dabbelt.com>
Date:   Tue Oct 24 06:58:48 2017 -0700

    Fix my previous gas/ChangeLog entry

commit da5f19a2534936376228943de85fdd60f6ddd839
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Oct 24 07:47:32 2017 -0700

    i386: Support .code64 directive only with 64-bit bfd
    
    Without 64-bit bfd, we can't properly support .code64 directive in
    32-bit mode.
    
    	* config/tc-i386.c (md_pseudo_table): Add .code64 directive
    	only if BFD64 is defined.
    	* testsuite/gas/i386/code64-inval.l: New file.
    	* gas/testsuite/gas/i386/code64-inval.s: Likewise.
    	* gas/testsuite/gas/i386/code64.d: Likewise.
    	* gas/testsuite/gas/i386/code64.s: Likewise.
    	* testsuite/gas/i386/i386.exp: Run mixed-mode-reloc32,
    	att-regs, intel-regs, intel-expr and string-ok tests only if
    	assembler supports x86-64.  Run code64 and code64-inval.

commit 5033013f17524964564dac5d422739ae5214729e
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Date:   Tue Oct 24 16:33:53 2017 +0200

    Fix gdb.opt/inline-cmds.exp regressions
    
    When sorting pending blocks in end_symtab_get_static_block, blocks
    with the same starting address must remain in the original order
    to preserve inline function caller/callee relationships.
    
    The original code seems to have implicitly relied on the fact that the
    glibc qsort implemention actually (in the common case) provides a stable
    sort, although this is not guaranteed by the standard.  But the GNU
    libstdc++ std::sort implementation is *not* stable.
    
    gdb/ChangeLog:
    2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
    
    	* buildsym.c (end_symtab_get_static_block): Use std::stable_sort.

commit 93f4de3929aeb3e21d57950bfa96539599a92f2a
Author: Renlin Li <renlin.li@arm.com>
Date:   Tue Oct 24 12:42:30 2017 +0100

    [BFD][PR21703]Override the new defined symbol with the old normal symbol when --allow-multiple-definition is provided.
    
    The behavior of _bfd_elf_merge_symbol and _bfd_generic_link_add_one_symbol is
    inconsistent.
    
    In multiple definition case, _bfd_elf_merge_symbol decided to override the old
    symbol definition with the new defintion, (size, type, target data)
    In _bfd_generic_link_add_one_symbol, it simply return without doing anything
    because of allow-multiple-definition is provided.
    This leaves the symbol in a wrong state.
    
    Here, following the documentation, I made this patch to force the old definition
    override the new definition if the old symbol is not dynamic or weak.
    Because, in those two cases, it's expected to do some merge. I have checked
    that, those two cases are properly handled.
    
    bfd/
    	PR ld/21703
    	* elflink.c (_bfd_elf_merge_symbol): Handle multiple definition case.
    
    ld/
    
    	PR ld/21703
    	* testsuite/ld-elf/elf.exp: Run new tests.
    	* testsuite/ld-elf/pr21703-1.s: New.
    	* testsuite/ld-elf/pr21703-2.s: New.
    	* testsuite/ld-elf/pr21703-3.s: New.
    	* testsuite/ld-elf/pr21703-4.s: New.
    	* testsuite/ld-elf/pr21703-r.sd: New.
    	* testsuite/ld-elf/pr21703-shared.sd: New.
    	* testsuite/ld-elf/pr21703.sd: New.
    	* testsuite/ld-elf/pr21703.ver: New.

commit eb2bfbadc159ff1463e58daf24c4ad5d1a23796d
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:45 2017 +0100

    Reindent gdb.threads/attach-into-signal.exp
    
    A previous patch removed one nesting level.
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.threads/attach-into-signal.exp (corefunc): Reindent.

commit 1f75a6516a4b480b5521dfb4e1a0721887ab5cdc
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:35 2017 +0100

    Drop /proc/PID/status polling from gdb.threads/attach-into-signal.exp
    
    I noticed that the 'with_test_prefix "stoppedtry $stoppedtry"' prefix
    in this testcase is unnecessary, because inside that block there are
    no pass/fail calls.  In fact the block includes a comment saying:
    
      # No PASS message as we may be looping in multiple
      # attempts.
    
    but looking deeper at this I noticed a few odd things with this code
    block:
    
    1. This code is assuming that the second line in the /proc/PID/status
       files is the "State:" line, which may have been true when this was
       originally written, but is not true on my machine at least (Linux
       4.8.13).
    
         $ cat /proc/self/status
         Name:   cat
         Umask:  0002
         State:  R (running)
    
       So nowadays, that 'string match "*(stopped)*"' is running against
       the "Umask:" line and thus always returns false, meaning the loop
       always breaks on $stoppedtry == 0.
    
    2. The loop seems to be waiting for the process to become "(stopped)",
       but if so then that 'if {![string match]}' check is reversed, it
       should be checking 'if {[string match]}' instead, because "string
       match" returns true if the string matches, not 0.
    
    3. But if we fixed all that, we'd still run into the simple fact that
       nothing is actually stopping the test's inferior process before GDB
       attaches...  The top of the testcase says:
    
        # This test was created by modifying attach-stopped.exp.
    
       ... and attach-stopped.exp does have:
    
           # Stop the program
           remote_exec build "kill -s STOP ${testpid}"
    
       but then attach-stopped.exp doesn't have an equivalent
       /proc/PID/status poll loop...  (Maybe it could.)
    
    So remove this whole loop as useless.
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.threads/attach-into-signal.exp: Remove whole "stoppedtry"
    	loop.

commit 779990d9f0a169215b3619a8a1cd120550320793
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:35 2017 +0100

    Fix unstable test names in gdb.threads/attach-into-signal.exp
    
    Currently, if you diff testsuite/gdb.sum of two testsuite runs you'll
    often see spurious hunks like these:
    
      -PASS: gdb.threads/attach-into-signal.exp: nonthreaded: attempt 2: attach (pass 2), pending signal catch
      +PASS: gdb.threads/attach-into-signal.exp: nonthreaded: attempt 1: attach (pass 2), pending signal catch
       PASS: gdb.threads/attach-into-signal.exp: successfully compiled posix threads test case
       PASS: gdb.threads/attach-into-signal.exp: threaded: handle SIGALRM stop print pass
      -PASS: gdb.threads/attach-into-signal.exp: threaded: attempt 1: attach (pass 1), pending signal catch
      -PASS: gdb.threads/attach-into-signal.exp: threaded: attempt 1: attach (pass 2), pending signal catch
      +PASS: gdb.threads/attach-into-signal.exp: threaded: attempt 2: attach (pass 1), pending signal catch
      +PASS: gdb.threads/attach-into-signal.exp: threaded: attempt 4: attach (pass 2), pending signal catch
    
    Fix this by removing the "attempt $attempt" test prefix.  The attempt
    number can be retrieved from gdb.log instead, since the testcase is
    already using "verbose -log" to that effect.
    
    (The 'with_test_prefix "stoppedtry $stoppedtry"' prefix is unnecessary
    too, because inside that block there are no pass/fail calls.  In fact
    the block includes a comment saying:
    
      # No PASS message as we may be looping in multiple
      # attempts.
    
    but I'll drop that whole loop in the next patch instead.)
    
    After this commit we'll show:
    
      PASS: gdb.threads/attach-into-signal.exp: nonthreaded: handle SIGALRM stop print pass
      PASS: gdb.threads/attach-into-signal.exp: nonthreaded: attach (pass 1), pending signal catch
      PASS: gdb.threads/attach-into-signal.exp: nonthreaded: attach (pass 2), pending signal catch
      PASS: gdb.threads/attach-into-signal.exp: successfully compiled posix threads test case
      PASS: gdb.threads/attach-into-signal.exp: threaded: handle SIGALRM stop print pass
      PASS: gdb.threads/attach-into-signal.exp: threaded: attach (pass 1), pending signal catch
      PASS: gdb.threads/attach-into-signal.exp: threaded: attach (pass 2), pending signal catch
    
    (I've avoided reindenting to make the patch easier to maintain/read.
    I'll reindent the blocks after this is in.)
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.threads/attach-into-signal.exp (corefunc): Remove "attach
    	$attempt" test prefix.

commit ad9b8f5d022f777f32cceab9856f47a5b6afcce1
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:34 2017 +0100

    Fix unstable test names in gdb.python/py-objfile.exp
    
    Currently, if you diff testsuite/gdb.sum of different builds you see
    this spurious hunk:
    
      -PASS: gdb.python/py-objfile.exp: get python valueof "sep_objfile.build_id" (6a0bfcab663f9810ccff33c756afdebb940037d4)
      +PASS: gdb.python/py-objfile.exp: get python valueof "sep_objfile.build_id" (1f5531c657c57777b05fc95baa0025fd1d115c3b)
    
    Fix this by syncing get_python_valueof with get_integer_valueof, which
    stopped outputting the value in commit 2f20e312aad6
    ("get_integer_valueof: Don't output value in test name").
    
    After this commit we'll show:
    
      PASS: gdb.python/py-objfile.exp: get python valueof "sep_objfile.build_id"
    
    As the comment explicitly says get_python_valueof is modeled on
    get_integer_valueof, I went ahead and also added the optional 'test'
    parameter while at it.
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* lib/gdb-python.exp (get_python_valueof): Add 'test' optional
    	parameter and handle it.  Don't output read value in test name.

commit fee6da6e1d96796f8aa8308b3833a3e4cdb409ff
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:34 2017 +0100

    Fix unstable test names in gdb.gdb/unittest.exp
    
    Currently, if you diff testsuite/gdb.sum of two builds built from different
    source directories you see this spurious hunk:
    
      -PASS: gdb.gdb/unittest.exp: maintenance check xml-descriptions /home/pedro/gdb1/src/gdb/testsuite/../features
      +PASS: gdb.gdb/unittest.exp: maintenance check xml-descriptions /home/pedro/gdb2/src/gdb/testsuite/../features
    
    After this commit we'll show instead:
    
      PASS: gdb.gdb/unittest.exp: maintenance check xml-descriptions ${srcdir}/../features
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.gdb/unittest.exp ('maintenance check xml-descriptions'): Use
    	custom test name.

commit 10389c2c8b56b2519441e55bf16f77882fb897cb
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:33 2017 +0100

    Fix unstable test names in gdb.base/startup-with-shell.exp
    
    Currently, if you diff testsuite/gdb.sum of two builds in different
    directories you see these spurious hunks:
    
      -PASS: gdb.base/startup-with-shell.exp: touch /home/pedro/gdb1/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/unique-file.unique-extension
      +PASS: gdb.base/startup-with-shell.exp: touch /home/pedro/gdb2/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/unique-file.unique-extension
    
      -PASS: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = *.unique-extension: set args /home/pedro/gdb1/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/*.unique-extension
      +PASS: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = *.unique-extension: set args /home/pedro/gdb2/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/*.unique-extension
    
      -PASS: gdb.base/startup-with-shell.exp: startup_with_shell = off; run_args = *.unique-extension: set args /home/pedro/gdb1/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/*.unique-extension
      +PASS: gdb.base/startup-with-shell.exp: startup_with_shell = off; run_args = *.unique-extension: set args /home/pedro/gdb2/build/gdb/testsuite/outputs/gdb.base/startup-with-shell/*.unique-extension
    
    Since the run_args arguments are already shown in the test prefix, we
    can change the "set args" test name to literally "set args $run_args".
    I.e., after this commit we'll show:
    
      PASS: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = *.unique-extension: set args $run_args
      PASS: gdb.base/startup-with-shell.exp: startup_with_shell = off; run_args = *.unique-extension: set args $run_args
      PASS: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = $TEST: set args $run_args
      PASS: gdb.base/startup-with-shell.exp: startup_with_shell = off; run_args = $TEST: set args $run_args
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.base/startup-with-shell.exp ('touch $unique_file'): Don't
    	include the unstable output directory name in the test's name.
    	(initial_setup_simple) <'set args'>: Use custom test name.

commit a80e65a9d590f8817e4acd5a62363319b6a1f961
Author: Pedro Alves <palves@redhat.com>
Date:   Tue Oct 24 10:43:33 2017 +0100

    Fix unstable test names in gdb.arch/arc-tdesc-cpu.exp
    
    Currently if you diff testsuite/gdb.sum of two builds built from
    different source trees you see this spurious hunk:
    
      -PASS: gdb.arch/arc-tdesc-cpu.exp: set tdesc filename /home/pedro/gdb1/src/gdb/testsuite/gdb.arch/arc-tdesc-cpu.xml
      +PASS: gdb.arch/arc-tdesc-cpu.exp: set tdesc filename /home/pedro/gdb2/src/gdb/testsuite/gdb.arch/arc-tdesc-cpu.xml
    
    After this commit we'll show this instead in gdb.sum:
      PASS: gdb.arch/arc-tdesc-cpu.exp: set tdesc filename $srcdir/gdb.arch/arc-tdesc-cpu.xml
    
    gdb/testsuite/ChangeLog:
    2017-10-24  Pedro Alves  <palves@redhat.com>
    
    	* gdb.arch/arc-tdesc-cpu.exp ('set tdesc filename'): Use gdb_test
    	with explicit test name.

commit 2c3f27ed0d6a91bc0812bb2fc6965fd03a413fee
Author: Palmer Dabbelt <palmer@dabbelt.com>
Date:   Fri Oct 6 12:06:45 2017 -0700

    RISC-V: Don't emit 2-byte NOPs if the C extension is disabled
    
    Systems without the C extension mandate 4-byte alignment for
    instructions, so there is no reason to allow for 2-byte alignment.  This
    change avoids emitting lots of unimplemented instructions into object
    files on non-C targets, which users keep reporting as a bug.  While this
    isn't actually a bug (as none of the offsets in object files are
    relevant until RISC-V), it is ugly.
    
    gas/ChangeLog
    
    2017-10-23  Palmer Dabbelt  <palmer@dabbelt.com>
    
            * config/tc-riscv.c (riscv_frag_align_code): Align code by 4
            bytes on non-RVC systems.

commit fee0ea1f2d3079f7fc3d48109c2a81cc7b7f241c
Author: GDB Administrator <gdbadmin@sourceware.org>
Date:   Tue Oct 24 00:00:31 2017 +0000

    Automatic date update in version.in

commit 4a8f9fc2b2467ae8bcfb75392c10fde5a0053740
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Oct 23 14:44:04 2017 -0700

    i386: Don't add elf32_x86_64 to supported emulations
    
    For 32-bit BFD, since elf64-x86-64.o isn't compiled in, "-m elf32_x86_64"
    never worked.  Don't add elf32_x86_64 to supported emulations with 32-bit
    BFD.
    
    	* configure.tgt (i[3-7]86-*-linux-*): Move elf32_x86_64 from
    	targ_extra_libpath to targ64_extra_libpath.

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


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


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-11-07 19:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-07 19:38 [SCM] scox/gdbserver-multi-client: 016f5a3777ab6ce33616917be7795a7501f29dd7 scox

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