Bug 16215 - SPARC: can't compute CFA for this frame
Summary: SPARC: can't compute CFA for this frame
Status: RESOLVED FIXED
Alias: None
Product: gdb
Classification: Unclassified
Component: backtrace (show other bugs)
Version: 7.6
: P2 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-25 08:10 UTC by Sebastian Huber
Modified: 2015-01-15 11:40 UTC (History)
4 users (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments
Sample ELF file (793.58 KB, application/x-executable)
2013-11-25 08:10 UTC, Sebastian Huber
Details
Workaround patch for GCC (1.99 KB, patch)
2013-11-27 13:09 UTC, Sebastian Huber
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastian Huber 2013-11-25 08:10:33 UTC
Created attachment 7304 [details]
Sample ELF file

I use Binutils 2.23.91.20131125, GCC 4.8.3 20131119, and GDB 7.6.1.  On SPARC I don't get proper backtraces since GCC 4.8:

Breakpoint 4, console_write (major=<error reading variable: can't compute CFA for this frame>, minor=<error reading variable: can't compute CFA for this frame>, arg=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/lib/libbsp/sparc/leon3/console/console.c:484
484       return rtems_termios_write(arg);
(gdb) where
#0  console_write (major=<error reading variable: can't compute CFA for this frame>, minor=<error reading variable: can't compute CFA for this frame>, arg=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/lib/libbsp/sparc/leon3/console/console.c:484
#1  0x40028694 in rtems_io_write (major=<error reading variable: can't compute CFA for this frame>, minor=<error reading variable: can't compute CFA for this frame>, argument=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../cpukit/sapi/src/iowrite.c:37
#2  0x40026e38 in rtems_deviceio_write (iop=<error reading variable: can't compute CFA for this frame>, buf=<error reading variable: can't compute CFA for this frame>, nbyte=<error reading variable: can't compute CFA for this frame>, major=<error reading variable: can't compute CFA for this frame>, minor=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/sup_fs_deviceio.c:108
#3  0x40026754 in device_write (iop=<error reading variable: can't compute CFA for this frame>, buffer=<error reading variable: can't compute CFA for this frame>, count=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../cpukit/libfs/src/imfs/deviceio.c:90
#4  0x40036a20 in write (fd=<error reading variable: can't compute CFA for this frame>, buffer=<error reading variable: can't compute CFA for this frame>, count=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/write.c:48
#5  0x400365d8 in _write_r (ptr=<error reading variable: can't compute CFA for this frame>, fd=<error reading variable: can't compute CFA for this frame>, buf=<error reading variable: can't compute CFA for this frame>, nbytes=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/write_r.c:41
#6  0x40031414 in __sfvwrite_r (ptr=ptr@entry=0x40041020, fp=fp@entry=0x40041258, uio=uio@entry=0x40040d94) at /home/sh/archive/gcc-git/newlib/libc/stdio/fvwrite.c:99
#7  0x4002b8c0 in __sprint_r (ptr=ptr@entry=0x40041020, fp=fp@entry=0x40041258, uio=uio@entry=0x40040d94) at /home/sh/archive/gcc-git/newlib/libc/stdio/vfprintf.c:437
#8  0x4002c4a4 in __sprint_r (uio=0x40040d94, fp=0x40041258, ptr=0x40041020) at /home/sh/archive/gcc-git/newlib/libc/stdio/vfprintf.c:1776
#9  _vfiprintf_r (data=0x40041020, fp=fp@entry=0x40041258, fmt0=fmt0@entry=0x40038528 "%s\n", ap=<optimized out>) at /home/sh/archive/gcc-git/newlib/libc/stdio/vfprintf.c:1776
#10 0x40029f6c in fiprintf (fp=0x40041258, fmt=0x40038528 "%s\n") at /home/sh/archive/gcc-git/newlib/libc/stdio/fiprintf.c:50
#11 0x40001354 in Init (argument=<error reading variable: can't compute CFA for this frame>) at /home/sh/rtems-4.11/c/src/../../testsuites/samples/ticker/init.c:31
#12 0x400293f0 in _Thread_Handler () at /home/sh/rtems-4.11/c/src/../../cpukit/score/src/threadhandler.c:188
#13 0x40029348 in _Thread_Handler () at /home/sh/rtems-4.11/c/src/../../cpukit/score/src/threadhandler.c:93

You can run the ELF file with Qemu:

qemu-system-sparc -s -S -nographic -M leon3_generic -m 64M -kernel ticker.exe
Comment 1 Sebastian Huber 2013-11-27 13:09:12 UTC
Created attachment 7308 [details]
Workaround patch for GCC

This patch for GCC forces the old debug format.  With it I don't have the backtrace problems:

(gdb) where
#0  console_write (major=0, minor=0, arg=0x400426f0) at /home/sh/rtems-4.11/c/src/lib/libbsp/sparc/leon3/console/console.c:452
#1  0x4002a7f0 in rtems_io_write (major=0, minor=0, argument=0x400426f0) at /home/sh/rtems-4.11/c/src/../../cpukit/sapi/src/iowrite.c:37
#2  0x40029124 in rtems_deviceio_write (iop=0x4004b150, buf=0x40039fe8, nbyte=25, major=0, minor=0) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/sup_fs_deviceio.c:108
#3  0x40028a3c in device_write (iop=0x4004b150, buffer=0x40039fe8, count=25) at /home/sh/rtems-4.11/c/src/../../cpukit/libfs/src/imfs/deviceio.c:90
#4  0x40038330 in write (fd=2, buffer=0x40039fe8, count=25) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/write.c:48
#5  0x40037e74 in _write_r (ptr=0x40042c60, fd=2, buf=0x40039fe8, nbytes=25) at /home/sh/rtems-4.11/c/src/../../cpukit/libcsupport/src/write_r.c:41
#6  0x40033878 in __sfvwrite_r (ptr=0x40042c60, fp=0x40042e98, uio=0x400429d4) at /home/sh/archive/gcc-git/newlib/libc/stdio/fvwrite.c:99
#7  0x4002dd1c in __sprint_r (ptr=0x40042c60, fp=0x40042e98, uio=0x400429d4) at /home/sh/archive/gcc-git/newlib/libc/stdio/vfprintf.c:437
#8  0x4002e904 in _vfiprintf_r (data=0x40042c60, fp=<optimized out>, fmt0=<optimized out>, ap=<optimized out>) at /home/sh/archive/gcc-git/newlib/libc/stdio/vfprintf.c:1776
#9  0x4002c214 in fiprintf (fp=0x40042e98, fmt=0x40039fe0 "%s\n") at /home/sh/archive/gcc-git/newlib/libc/stdio/fiprintf.c:50
#10 0x40001420 in Init (argument=1073991032) at /home/sh/rtems-4.11/c/src/../../testsuites/samples/ticker/init.c:31
#11 0x4002b688 in _Thread_Handler () at /home/sh/rtems-4.11/c/src/../../cpukit/score/src/threadhandler.c:188
#12 0x4002b5b4 in _Thread_Handler () at /home/sh/rtems-4.11/c/src/../../cpukit/score/src/threadhandler.c:93
Comment 2 Tom Tromey 2013-11-27 16:10:05 UTC
I looked at the ELF with readelf a bit but nothing
stood out as obviously wrong.
I think it would be worthwhile to track down where
gdb is misinterpreting the data.  That gcc patch
definitely should not be needed; and I would have
thought gdb 7.6 would have all the needed DWARF 4 updates.
Comment 3 Sebastian Huber 2014-03-24 18:21:31 UTC
With Binutils 2.24.51.20140322, GCC 4.9.0 20140323, and GDB 7.7.50.20140322-cvs I still have the problem.

An objdump with --dwarf --dwarf-check gives:

sparc-rtems4.11-objdump --dwarf --dwarf-check ticker.exe >/dev/null
sparc-rtems4.11-objdump: Warning: There is an overlap [0x668 - 0x650] in .debug_ranges section.
sparc-rtems4.11-objdump: Warning: There is an overlap [0x6c0 - 0x6a8] in .debug_ranges section.

Is this a problem?  I am not sure how to begin to search for the problem.  Is this more likely a Binutils, GCC or GDB problem?

On another test program with C++ I get even more warnings:

sparc-rtems4.11-objdump --dwarf --dwarf-check sptls02.exe >/dev/null
sparc-rtems4.11-objdump: Warning: There is a hole [0x1a34 - 0x1a8f] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1a97 - 0x1aad] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1ab5 - 0x1ad5] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1add - 0x1afd] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1e42 - 0x1e64] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1e6c - 0x1e8d] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1e95 - 0x1eb7] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1ebf - 0x1ecf] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1ed7 - 0x1ee7] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1eef - 0x1f13] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1f1b - 0x1f34] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1f3c - 0x1f7e] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1f86 - 0x1fa6] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x1fae - 0x1fce] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x20ef - 0x2108] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x251a - 0x2575] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x257d - 0x2593] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x259b - 0x25bb] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x25c3 - 0x25e3] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x26a3 - 0x26fe] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2706 - 0x271c] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2724 - 0x2744] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x274c - 0x276c] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2c25 - 0x2c3e] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2c46 - 0x2c6a] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2c72 - 0x2c88] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2c90 - 0x2ca9] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2cb1 - 0x2cca] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is a hole [0x2cd2 - 0x2ce8] in .debug_loc section.
sparc-rtems4.11-objdump: Warning: There is an overlap [0x12e0 - 0x12c8] in .debug_ranges section.
sparc-rtems4.11-objdump: Warning: There is an overlap [0x1868 - 0x1850] in .debug_ranges section.
sparc-rtems4.11-objdump: Warning: There is an overlap [0x5038 - 0x4f78] in .debug_ranges section.
sparc-rtems4.11-objdump: Warning: There is an overlap [0x5b60 - 0x5b30] in .debug_ranges section.
Comment 4 Sebastian Huber 2014-09-24 11:39:34 UTC
There exists a patch for this problem:

https://www.sourceware.org/ml/gdb-patches/2014-07/msg00012.html

It was not applied due to a problem with the StackGhost.  On Linux you don't observe these problems since here you have a special case in sparc-linux-tdep.c to add the DWARF unwinder.  As a user I think it is quite unsatisfactory that GDB is broken on SPARC for all non-Linux systems with GCC 4.8 and above due to a problem in the StackGhost.
Comment 5 cvs-commit@gcc.gnu.org 2014-12-13 13:27:18 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, master has been updated
       via  14aba1ac0d583ebd77b7645f88308d75c0a69d0f (commit)
      from  ae6a105d22fb603dbfb956bbcedf9ae469323d55 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=14aba1ac0d583ebd77b7645f88308d75c0a69d0f

commit 14aba1ac0d583ebd77b7645f88308d75c0a69d0f
Author: Joel Brobecker <brobecker@adacore.com>
Date:   Fri Nov 21 04:59:35 2014 +0100

    Lift DWARF unwinder restriction in dwarf2-frame.c::dwarf2_frame_cfa
    
    GDB is currently broken on all SPARC targets when using GCC 4.9.
    When trying to print any local variable:
    
        (gdb) p x
        can't compute CFA for this frame
    
    This is related to the fact that the compiler now generates DWARF 4
    debugging info by default, and in particular that it now emits
    DW_OP_call_frame_cfa, which triggers a limitation in dwarf2_frame_cfa:
    
       /* This restriction could be lifted if other unwinders are known to
          compute the frame base in a way compatible with the DWARF
          unwinder.  */
       if (!frame_unwinder_is (this_frame, &dwarf2_frame_unwind)
           && !frame_unwinder_is (this_frame, &dwarf2_tailcall_frame_unwind))
         error (_("can't compute CFA for this frame"));
    
    We couldn't append the dwarf2 unwinder to all SPARC targets because
    it does not work properly with StackGhost:
        https://www.sourceware.org/ml/gdb-patches/2014-07/msg00012.html
    
    We also later discovered that using the DWARF2 unwinder means
    using it for computing the function's return address, which
    is buggy when it comes to functions returning a struct (where
    the return address is saved-pc+12 instead of saved-pc+8).
    This is because GCC is emitting the info about the return address
    as %o7/%i7 instead of the actual return address.  For functions
    that have debugging info, we compensate by looking at the function's
    return type and add the extra +4, but for function without debug
    info, we're stuck.
    
    EricB and I twisted the issue in all the directions we could think of,
    and unfortunately couldn't find a way to make it work without
    introduction one regression or another.
    
    But, stepping back a little, just removing the restriction seems to work
    well for us on all both sparc-elf and {sparc,sparc64}-solaris.
    After reviewing the previous discussions about this test, I could
    not figure out whether some unwinders were already known to have
    incompatible CFAs or if the concern was purely theoretical:
        https://www.sourceware.org/ml/gdb-patches/2009-06/msg00191.html
        https://www.sourceware.org/ml/gdb-patches/2009-07/msg00570.html
        https://www.sourceware.org/ml/gdb-patches/2009-09/msg00027.html
    
    At the moment, we took the approach of trying it out, and see what
    happens...
    
    gdb/ChangeLog:
    
            PR backtrace/16215:
            * dwarf2-frame.c (dwarf2_frame_cfa): Remove the restriction
            the frame unwinder must either be the dwarf2_frame_unwind
            or the dwarf2_tailcall_frame_unwind.  Verify that this_frame's
            stack_addr is valid before calling get_frame_base.  Throw
            an error if not valid.
    
    Tested on sparc-solaris and sparc-elf with AdaCore's testsuite
    (the FSF testsuite crashes all of AdaCore's solaris machines).

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

Summary of changes:
 gdb/dwarf2-frame.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)
Comment 6 cvs-commit@gcc.gnu.org 2014-12-13 15:26:35 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, master has been updated
       via  e07829801094dedf61c76757a1f6b15515df310b (commit)
      from  f93b65a0f4e4e481eee904df841b5f67ccfc7364 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e07829801094dedf61c76757a1f6b15515df310b

commit e07829801094dedf61c76757a1f6b15515df310b
Author: Joel Brobecker <brobecker@adacore.com>
Date:   Sat Dec 13 10:25:41 2014 -0500

    Add missing ChangeLog entry for PR backtrace/16215.

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

Summary of changes:
 gdb/ChangeLog |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
Comment 7 Sebastian Huber 2014-12-17 09:52:19 UTC
It works for me using GDB 7.8.50.20141217-cvs without patches.  From my point of view the PR can be closed.  I am not sure what the target milestone will be.
Comment 8 cvs-commit@gcc.gnu.org 2014-12-25 00:45:38 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The annotated tag, hjl/linux/release/2.25.51.0.1 has been created
        at  02458b5b7894e10794a1e1b87e4f8e36b3198b10 (tag)
   tagging  a0890eb04228a6b921697b1192285b57e5f46e97 (commit)
  replaces  hjl/linux/release/2.24.51.0.4
 tagged by  H.J. Lu
        on  Wed Dec 24 16:43:46 2014 -0800

- Log -----------------------------------------------------------------
Linux binutils 2.25.51.0.1

Ajit Kumar Agarwal (2):
      Microblaze: Reject invalid target descriptions
      Microblaze: Replace microblaze-expedite from pc to rpc

Alan Modra (122):
      daily update
      Regen gold POTFILES.in
      daily update
      daily update
      daily update
      Do away with hash table line lookup in dwarf2dbg.c
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      Discard zero address range eh_frame FDEs
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      Run eh_frame optimisation for relocatable link
      daily update
      sparc-aout and sparc-coff breakage
      Correct fscanf char field count
      Avoid undefined behaviour with signed expressions
      daily update
      ChangeLog typo fix
      Define bfd_find_line entry of BFD_JUMP_TABLE_SYMBOLS using NAME.
      Merge bfd_find_nearest_line variants
      daily update
      PR17488, powerpc64-linux-ld segfault
      Fix 17492, ld segfault with --oformat=binary
      daily update
      daily update
      Fix PR17493, attempted output of *GAS `reg' section* symbol
      PowerPC64 ELFv1 function symbol definition vs LTO and discarded sections
      daily update
      daily update
      daily update
      Add gcc-4.9 libgomp symbols requiring --plt-thread-safe for power7
      Relax ppc64_elf_tls_optimize assertion
      [GOLD] Add gcc-4.9 libgomp symbols requiring --plt-thread-safe for power7
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      daily update
      Provide stat function for spu overlay manager iovec
      Regenerate spu overlay and icache manager files
      Use frag_now_fix_octets in gas d10v, d30v
      Don't use register keyword
      daily update
      Use obstack_blank_fast to shrink obstacks
      Cast result of obstack_next_free
      daily update
      daily update
      Revert bfd_get_size checks
      aoutx.h tidy
      tekhex buffer management and symbol types
      tekhex architecure
      daily update
      Correct buffer overrun test
      daily update
      daily update
      daily update
      ld -r abort in _bfd_elf_write_section_eh_frame
      Avoid coff OOM
      coff coff
      daily update
      Fix x86 non-ELF build breakage
      Fix z80-coff build breakage
      Throw away dodgy coff line number info earlier
      daily update
      daily update
      Default powerpc64 to --plt-thread-safe for Go
      ppc476 workaround sizing
      PPC gold doesn't check for overflow properly
      PPC gold doesn't check for overflow properly
      PowerPC64 --plt-align
      [GOLD] PowerPC relaxation corner case
      Retry powerpc gold stub grouping when groups prove too large
      _bfd_elf_slurp_version_tables tidy
      Fix build breakage on 32-bit targets with 64-bit bfd
      Don't deprecate powerpc mftb insn
      Sanity checks on version section
      Don't output symbol version definitions for non-DT_NEEDED libs
      Power4 should treat mftb as extended mfspr mnemonic
      ppc64_elf_edit_opd revamp
      powerpc gold, fix pr17566
      powerpc gold, work around pr17670
      Sort relocs output by ld -r
      PowerPC gold, fix 32-bit branch address arithmetic
      ChangeLog typo fix
      ppc64_elf_edit_opd revamp, take 2
      Don't sort ld -r relocs for mips
      Don't access elf tdata in dwarf.c without first checking for an ELF bfd
      Don't return DW_AT_name for function name in C++
      Don't always build coffgen.o
      Use autoconf check for long long in binutils
      Copy relocations against protected symbols
      Set bfd_error in _bfd_elf_adjust_dynamic_copy
      PowerPC register numbers in DWARF
      Move support code for linker script DEFINED to ldexp.c
      Correct logic for "defined by object"
      Don't PROVIDE over top of common symbols
      Use a symbol flag bit to mark linker defined symbols
      Report an error for script multiply defined symbols
      Yet another DEFINED testcase
      Fix generic linker symbol output when weak is overridden by strong
      Don't create .eh_frame_hdr on shared lib bfd

Alexander Cherepanov (2):
      Fix a snafu setting up the string table read in from a COFF file.
      This patch fixes a snafu where the -D and -U short versions of the

Andreas Arnez (58):
      Replace 'core_regset_sections' by iterator method
      Add 'regset' parameter to 'iterate_over_regset_sections_cb'
      Add multi-arch capable 'fbsd_make_corefile_notes' variant
      AARCH64: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      ALPHA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      ARM: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      FRV: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      HPPA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      X86: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      M32R: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      M68K: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      IA64: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      M88K: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      MIPS: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      MN10300: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'.
      NIOS2: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      PPC: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      SCORE: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      SH: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      SPARC: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      TILEGX: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      VAX: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      XTENSA: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
      Drop target method 'fbsd_make_corefile_notes'
      Linux targets: drop fall back to target method for 'make_corefile_notes'
      Drop 'regset_from_core_section' gdbarch method
      Remove non-address bits for longjmp resume breakpoint
      Eliminate literal line numbers in so-impl-ld.exp
      Eliminate literal line numbers in dbx.exp
      Eliminate literal line numbers in call-ar-st.exp
      Eliminate literal line numbers in call-rt-st.exp
      Eliminate literal line numbers in ending-run.exp
      Eliminate literal line numbers in foll-exec.exp
      Eliminate literal line numbers in jump.exp
      Eliminate literal line numbers in shlib-call.exp
      Eliminate literal line numbers in mi-console.exp
      'callfuncs' test case: Fixes in conditionally compiled code
      Perform all tests in callfuncs.exp with and without C function prototypes
      callfuncs.exp: Indent perform_all_tests()
      Drop non-prototype C function header variants: solib1.c
      Drop non-prototype C function header variants: 'break' test case
      Drop non-prototype C function header variants: 'list' test case
      Drop non-prototype C function header variants: 'sepdebug' test case
      GDB testsuite: drop non-prototype C function header variants
      GDB testsuite: Fix warnings with -std=gnu11
      Drop remaining references to removed source lines in break1.c and ur1.c
      Eliminate literal line numbers in mi-until.exp
      GDB testsuite: More fixes for warnings with -std=gnu11
      Use 2-byte instead of 4-byte NOP on S390 in 'bp-permanent' test case
      S390: Fix 'expedite' for s390-te-linux64
      execl-update-breakpoints.exp: Move whole segment instead of .text section
      gdbserver: Rephrase loops in regsets_fetch/store_inferior_registers
      gdbserver: Prevent stale/random values in register cache
      gdbserver: Support read-only regsets in linux-low.c
      S390: Fix gdbserver support for TDB
      Add new GDB command "maint print user-registers"
      Provide completer for "info registers"
      Fix indentation of "maint print user-registers"

Andreas From (1):
      Add myself as write after approval maintainer

Andreas Schwab (1):
      * configure.tgt (targ_extra_obj) [aarch64*-*]: Define.

Andrew Bennett (1):
      [MIPS] When calculating a relocation using an undefined weak symbol don't check for overflow.

Andrew Burgess (9):
      When relaxing, update symbols at the very end of the section.
      When relaxing, update size of symbols.
      Merge include/* files from GCC commit 77cab4753.
      Merge include/* files from GCC commit 69a2f316d3.
      Add string representation of ELF e_flags for AVR.
      AVR: Only set link-relax elf flag when appropriate.
      AVR/ld: Propagate link-relax elf header flag correctly.
      AVR: Assembler now prepares for linker relaxation by default.
      AVR: Document linker relaxation related options.

Andrew Pinski (2):
      [AARCH64] Add thunderx support to gas
      Add forgotten changelog entry.

Andrew Stubbs (1):
      Clarify strip docs.

Anthony Green (4):
      Add zex instructions for moxie port
      Add zex instruction support for moxie port
      Add mul.x and umul.x instructions to moxie port
      Add support for moxie's mul.x and umul.x instructions

Cary Coutant (12):
      Fix race condition causing assert in Eh_frame_hdr::do_sized_write().
      Add PR reference to ChangeLog entry.
      Fix problem where TLS common symbols are not allocated properly during LTO.
      Fix handling of relocations against TLS section symbols.
      Fix error from previous patch where tosize and tovalue were redefined
      Add "typename" keyword to satisfy GCC 4.2.
      Fix corrupted .eh_frame section with LTO and --gc-sections.
      Add file size to ELF symbol labelling start of a binary file.
      Update list of debug sections for --strip-debug-xxx options.
      Fix extraneous warning about executable stack.
      Fix internal error in gold when -Map and --compress-debug-sections are used
      gold/

Catalin Udma (2):
      Fix info mem command for 32 bits host/64 bits target
      aarch64/gdbserver: fix floating point registers display

Chen Gang (3):
      Fix memory overflow issue about strncat
      Ensure zero termination of tic4x insn buffer
      Fix windres memory leak

Daniel Colascione (1):
      Warn users about mismatched PID namespaces

Denis Chertykov (5):
      * avrtiny.sc: Apply avr.sc fixes.
      * MAINTAINERS: Fix my email address.
      * configure.ac: Add od-elf32_avr to build.
      * od-elf32_avr.c: Forgot to add a new file.
      * od-elf32_avr.c (elf32_avr_dump_mem_usage): Fix device initialization.

Dennis Brueni (1):
      Thix fixes an obvious coding error that led to a GDB crash on AIX or HPUX.

Dmitriy Ivanov (1):
      Add support for -z global.

Don Breazeal (2):
      Refactor native follow-fork.
      Follow-fork message printing improvements

Doug Evans (104):
      gdb.base/structs.c (main): Don't run forever.
      Remove some code duplication in py-objfile.c, py-progspace.c.
      fix file paths in previous commit
      Fix dw2-op-out-param.S CU offset values.
      Change name of file name test in py-objfile.exp.
      PR python/17364
      Add gdb.Objfile.progspace attribute.
      New python event "clear_objfiles".
      linux-nat.c (linux_nat_wait_1): Make local prev_mask non-static.
      Fix some comments to say minus_one_ptid instead of PID == -1.
      Remove second (nested) copy of local var child_die.
      symtab.c (lookup_symbol_aux_quick): Set block_found upon success.
      symtab.c: forward decl cleanup
      Clean up some function comments in symtab.[ch].
      Move block_found decl to symtab.h.
      block.c (allocate_block): Use OBSTACK_ZALLOC instead of obstack_alloc.
      * block.h (ALL_BLOCK_SYMBOLS): Fix comment.
      Rename parameter "kind" to "block_index" in quick lookup functions.
      symtab.c (lookup_symbol_aux_local): Fix typo in comment.
      Add ability to add attributes to gdb.Objfile and gdb.Progspace objects.
      valops.c: Fix some whitespace.
      objfiles.h: Remove some unused macros.
      xcoffread.c (process_linenos): Delete unnecessary code.
      mdebugread.c (parse_procedure): Delete unnecessary forward decl.
      Update description of ownership of files in include/
      solib_global_lookup: Fetch arch from objfile, not target_gdbarch.
      Delete TYPE_CODE_CLASS, it's just an alias of TYPE_CODE_STRUCT.
      Forgotten ChangeLog entry for previous commit.
      Use ALL_PRIMARY_SYMTABS instead of ALL_SYMTABS in some places.
      Move lookup_block_symbol to block.c, rename to block_lookup_symbol.
      New macro ALL_BLOCK_SYMBOLS_WITH_NAME.
      Rename lookup_symbol_static to lookup_symbol_in_static_block,
      lookup_symbol_in_block: Renamed from lookup_symbol_aux_block.
      Rename some "aux" functions.
      symtab.c (basic_lookup_symbol_nonlocal): Add comment.
      Rename lookup_symbol_global to lookup_global_symbol.
      symtab.h (lookup_global_symbol): Improve function comment.
      PR 17564: Fix objfile search order for static symbols.
      source.c (select_source_symtab): Rewrite to use ALL_SYMTABS.
      symmisc.c: Remove trailing whitespace.
      dwarf2read.c (update_enumeration_type_from_children): Avoid infinite loop.
      PR symtab/17591
      expand_symtab_containing_pc: Renamed from find_pc_sect_symtab_via_partial.
      PR symtab/17559
      Add copyright headers.
      The result of symtab expansion is always a primary symtab.
      Split up end_symtab_from_static_block into two.
      Use SYMBOL_OBJFILE more.
      Fix memory leak in watch_main_source_file_lossage.
      SYMTAB_OBJFILE: New macro.
      SYMTAB_DIRNAME: New macro.
      symtab.h (SYMTAB_LINETABLE): Renamed from LINETABLE.  All uses updated.
      buildsym API cleanup
      symtab.h (SYMTAB_BLOCKVECTOR): Renamed from BLOCKVECTOR.  All uses updated.
      Split struct symtab into two: struct symtab and compunit_symtab.
      psymtab.c (psymtab_search_name): Fix whitespace.
      cp-namespace.c (cp_lookup_symbol_nonlocal): Fix comment.
      symtab.c: Comment and whitespace improvements.
      Fix dumping of function arguments.
      gdb.dwarf2/dw2-op-out-param.S: Fix comment.
      python/py-infthread.c: Whitespace fixes.
      New python events: infcall, register/memory changed.
      revert previous patch so that I can re-commit with correct author
      Remove remnant of Chill support.
      dwarf2read.c (peek_die_abbrev): Improve error message text.
      PR symtab/17591
      PR symtab/17602
      Remove cplus_specific from general_symbol_info.
      New python attribute gdb.Objfile.build_id.
      New python method gdb.Objfile.add_separate_debug_file.
      Revert: linespec.c (iterate_name_matcher): Fix arguments to symbol_name_cmp.
      New "owner" attribute for gdb.Objfile.
      python/py-objfile.c (objfpy_get_owner): Increment refcount of result.
      cp_lookup_symbol_imports: Make static.
      cp-namespace.c (lookup_symbol_file): Move next to only caller.
      cp_lookup_symbol_nonlocal: Move definition closer to its subroutines.
      symtab.c (domain_name) <MODULE_DOMAIN>: Add missing case.
      (lookup_global_symbol_from_objfile): Simplify.
      cp-namespace.c (cp_lookup_nested_symbol): Fix comments.
      New python function gdb.lookup_objfile.
      Give quick_symbol_functions "methods" a consistent naming scheme.
      Rename cp_is_anonymous to cp_is_in_anonymous.
      value_maybe_namespace_elt: Remove unnecessary test of result != NULL.
      utils.c (make_hex_string): Fix off-by-one error.
      symtab.h (struct symbol_search) <symtab>: Delete, unnecessary.
      cp_find_type_baseclass_by_name: Renamed from find_type_baseclass_by_name.
      cp_lookup_symbol_via_imports: Renamed from cp_lookup_symbol_imports.
      boards/stabs.exp: New file.
      Make buildsym set-up/tear-down more consistent, and document it.
      New parameter "debug symbol-lookup".
      value_maybe_namespace_elt: Remove redundant call to lookup_static_symbol.
      Fix file name in earlier entry.
      language_lookup_primitive_type: Renamed from language_lookup_primitive_type_by_name.
      infcmd.c (jump_command): Minor simplification.
      cp-namespace.c: Whitespace cleanup.
      cp-namespace.c (cp_lookup_symbol_in_namespace): Simplify.
      cp-namespace.c (cp_lookup_nested_symbol_1): New function.
      cp-namespace.c (cp_lookup_symbol_via_imports): New arg "search_scope_first".
      cp-namespace.c (cp_lookup_symbol_via_all_imports): New function.
      Replace some symbol accessor macros with functions.
      Add langdef arg to la_lookup_symbol_nonlocal.
      initialize_objfile_symbol: Renamed from initialize_symbol.
      symtab.h (SYMBOL_DOMAIN_BITS): New macro.
      Look up primitive types as symbols.

Dr Philipp Tomsich (1):
      Remove the artificial limit on code alignment through the use of the

Eric Botcazou (6):
      Update from upstream config repo
      Add Visium support to opcodes
      Add Visium support to bfd
      Add Visium support to binutils
      Add Visium support to gas
      Add Visium support to ld

Espen Grindhaug (1):
      Fixes an infinite loop in readelf parsing a corrupt binary, and other minor corrections.

Evgeniy Dushistov (1):
      Fix race condition when using --threads with linker plugins.

GDB Administrator (36):
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in
      Automatic date update in version.in

Gary Benson (4):
      Remove spurious exceptions.h inclusions
      Include cleanups.h in common-defs.h
      Include common-exceptions.h in common-defs.h
      Do not include unnecessary files in fbsd-tdep.c

H.J. Lu (100):
      Fix build for OLD_FREEBSD_ABI_LABEL
      Convert mov to lea only if r_offset >= 2
      X32: Add REX prefix to encode R_X86_64_GOTTPOFF
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Cast to unsigned long in range checks
      Cast time value to unsigned long to print
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Fix a typo in gas/ChangeLog
      Add assembler support for @gotplt
      Mark R_X86_64_GOTPLT64 obsolete
      Rename symbbol to symbol
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Add cast to unsigned int
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Correct x86 assembler manual
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Don't make PLT entry for R_X86_64_GOTPLT64
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Always run mpx3 and mpx4 tests in 64-bit
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Check PC-relative offset overflow in PLT entry
      Run IFUNC run-time tests only if IFUNC is supported
      Add ifunc-main IFUNC tests
      Always load function pointer into a stack variable
      Add function and function pointer tests
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Update plt-main tests for x32
      Don't run pr17618 test on x32
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Add binutils-pltgot.patch
      Run plt-main test with -pie
      Add function and function pointer tests for i386
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Add i386 .plt.got support
      Check PC-relative offset overflow in PLT entry
      Optimize PC-relative offset overflow check
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Check pointer_equality_needed instead of non_got_ref
      Check branch displacement overflow in x86-64 PLT entry
      Assert size of elf_x86_64_{bnd|legacy}_plt2_entry
      Update libtool.m4 from GCC trunk
      Optimize out i386/x86-64 JUMP_SLOT relocation
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Remove binutils-pltgot.patch
      Update binutils-sharable.patch for master
      Display symbol version when dumping dynrelocs
      Use get_symbol_version_string in BFD_JUMP_TABLE_SYMBOLS
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Remove binutils-pr16496.patch
      Update ld-alpha tests for secureplt
      Update mips tests with symbol version string
      Add tests for PR ld/16452 and PR ld/16457
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Properly check for an out of range row index
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      X86-64: Allow copy relocs for building PIE
      Discard space for relocs against symbols with copy relocs
      Check info->executable for symbols which need copy relocs
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Reformat elf_x86_64_create_dynamic_sections
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Update binutils-sharable.patch against master
      Replace copyreloc-main.c with copyreloc-main.S
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Compile pie_copyrelocs_test.cc with -fno-exceptions -fno-asynchronous-unwind-tables
      Add _bfd_elf_ifunc_get_synthetic_symtab
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Define bfd_elf32_get_synthetic_symtab for x32
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Handle weak alias for PIE with copy reloc
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Update binutils-sharable.patch against master
      Compress debug sections for Linux/x86 by default
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Cast current_group_size to unsigned long
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Mention --compress-debug-sections default in NEWS
      Check corrupt input
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Apply binutils-pr17729.patch
      Apply binutils-pr14675.patch
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Change SometimesInlineFunction to "return i * i * 3;"
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Cast size to long to warn
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Update binutils-pr14675.patch
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Update binutils-pr14675.patch
      Update binutils-lto-mixed.patch against master
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Add cast to unsigned long
      Merge remote-tracking branch 'origin/master' into hjl/linux/master
      Merge remote-tracking branch 'origin/hjl/linux/master' into hjl/linux/applied
      Update binutils-lto-mixed.patch for avrelf.em/ppc32elf.em
      Merge remote-tracking branch 'origin/hjl/linux/master' into hjl/linux/applied
      Fix ld/emultempl/avrelf.em and ld/emultempl/ppc32elf.em
      Update release note for 2.25.51.0.1

Han Shen (3):
      Here we have the patch for gold aarch64 backend to support relaxation.
      Misc about gold for aarch64 backend.
      Fix for gold linking tlsdesc into an executable with -pie.

Hans-Peter Nilsson (10):
      ld.texinfo: Clarify that sysroot affects "=" expansion.
      ld.texinfo: "=" path-prefix forces sysroot in scripts not only SEARCH_DIR
      lib/ld-lib.exp (check_sysroot_available): New proc.
      Add sysroot-prefix ld linker tests.
      If "=" is the first character in a ldscript input file, force a sysroot prefix.
      Allow unquoted = as the first character in ldscript input_list names
      Implement --print-sysroot in ld.
      Implement --print-sysroot in ld.
      Fix ld tests with sysroot=/ and --enable-targets=all and test --print-sysroot
      Fix %lx format used with bfd_size_type mismatch in readelf.c

Iain Buclaw (3):
      Sync libiberty with upstream GCC.
      Remove d-support.c and use gdb_demangle for demangling D symbols.
      Add dlang demangling support to c++filt.

Igor Zamyatin (1):
      Add -z bndplt to generate BND prefix in PLT entries

Ilya Tocar (4):
      Add clwb instruction
      Add pcommit instruction
      Add AVX512IFMA instructions
      Add AVX512VBMI instructions

James Hogan (1):
      Clean up after generated c files for MIPS DSP targets

Jan Beulich (4):
      aarch64: move bogus assertion
      ppc: enable msgclr and msgsnd on Power8
      gas: avoid bogus warnings in false branches of conditional
      aarch64: allow adding/removing just feature flags via .arch_extension

Jan Kratochvil (19):
      Fix library-list.dtd -> library-list-svr4.dtd
      Use gdb_test_sequence in gdb.base/save-bp.exp.
      Fix "save breakpoints" for "disable $bpnum" command.
      Fix "save breakpoints" for "catch" command
      NEWS: Fix typo.
      Reindent code (resolve_dynamic_type_internal).
      Fix add-auto-load-safe-path typo.
      Add add-auto-load-scripts-directory.
      Accelerate lookup_symbol_aux_objfile 85x
      Remove const from many struct objfile *
      Unify lookup_symbol_in_objfile_symtabs
      add dummy frame destructor
      add infcall_mmap and gcc_target_options gdbarch methods
      introduce call_function_by_hand_dummy
      export dwarf2_reg_to_regnum_or_error
      add linux_infcall_mmap
      add s390_gcc_target_options
      Fix 7.8 regression: resolve_dynamic_struct: Assertion `TYPE_NFIELDS (type) > 0' (PR 17642)
      Fix MinGW compilation

Jan-Benedict Glaw (7):
      2014-11-05  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
      Update from upstream Automake
      Update `move-if-change' from gnulib
      Update config.{guess,sub} from upstream config repo
      Sync libiberty from GCC
      Fix signedness warning
      Fix date in ChangeLog entry

Jason Merrill (1):
      * Makefile.in (check-gdb.%): Restore.

Jing Yu (2):
      Add aarch64 to list of targets that support gold.
      Give informative error message for stub-group-size

Jiong Wang (4):
      [AArch64] Cortex-A53 erratum 835769 linker workaround
      treate -specs as both cflags & ldflags
      [AArch64] Warn on load pair to same register
      [AArch64] Cortex-A53 Erratum 835769 -- sort maps

Joel Brobecker (23):
      [Ada] Error adding/subtracting pointer value to/from integral.
      Use strtod instead of strtold in libiberty/d-demangle.c
      ARM: stricter __stack_chk_guard check during prologue analysis
      Document the GDB 7.8.1 release in gdb/ChangeLog
      common-defs.h: include <stdarg.h> before <stdio.h>
      [gdbserver/lynx] spurious failure to write in inferior memory
      varsize-limit error printing element of packed array...
      [Ada] Ignore __XA types when redundant.
      [Ada] gdb.ada/complete.exp failure on x86_64-windows
      [Ada] XA type is not redundant if the ranges' subtypes do not match
      Handling of empty Ada ranges with a negative upper bound.
      Always consider infcall breakpoints as non-permanent.
      gdb_realpath: Rework comment about handling on Windows.
      callback.h:struct host_callback_struct compilation error on Windows hosts.
      Lift DWARF unwinder restriction in dwarf2-frame.c::dwarf2_frame_cfa
      configure gdb/gnulib with --disable-largefile if largefile support disabled.
      Add ChangeLog entries missing from the previous commit.
      Add missing ChangeLog entry for PR backtrace/16215.
      Fix ARI warnings in gdb/compile/compile-object-load.c.
      Avoid use of sprintf in gdb/utils.c:make_hex_string
      Internal error trying to print uninitialized string.
      Use PTRACE_SINGLESTEP_ONE when single-stepping one thread.
      [Linux] Ask kernel to kill inferior when GDB terminates

Joel Sherrill (3):
      s/immediatly/immediately/ in sim/sh/ChangeLog entry.
      sim/igen/: Change immediatly to immediately
      sim/ppc/*: Change immediatly to immediately

Jose E. Marchesi (3):
      This is a series of patches that add support for the SPARC M7 cpu to
      opcodes: fix several misplaced hwcap entries.
      opcodes, elf: annotate instructions with HWCAP2_VIS3B.

Keith Seitz (1):
      This commit causes hundreds of core file regressions in gdb:

Kito Cheng (1):
      Fix SysV-style hash table when --hash-style=both.

Kwok Cheung Yeung (1):
      Fix the gdb.dwarf2/dw2-dir-file-name.exp test on MIPS

Luis Machado (5):
      MIPS bit field failures in gdb.base/store.exp
      Fix mingw32 failures due to incorrect directory separator in pattern
      Fix ARM machine state testcase failures
      Skip tests that use cd for remote hosts
      I caught a few mingw32-specific failures for some of the gdb.reverse

Maciej W. Rozycki (11):
      Avoid software breakpoint's instruction shadow inconsistency
      Also mark ELF solib trampoline minimal symbols special
      MIPS: Correct MUSTBE32 interpretation in delay slot handling
      MIPS: Correct heuristic prologue termination conditions
      MIPS: Rewrite `add_offset_16' to match its name
      gdb.dwarf2: Testsuite 64-bit pointer truncation fixes
      MIPS/GAS: Correct file option settings with `.insn'
      MIPS: Add support for microMIPS Linux signal trampolines
      Correct invalid assumptions made by (mostly) DWARF-2 tests
      MIPS: Keep the ISA bit in compressed code addresses
      MIPS: Define aliases for MSYMBOL_TARGET_FLAG macros

Marcus Shawcroft (2):
      [AArch64] Remove example processors from GAS.
      [AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57.

Mark Wielaard (3):
      Recognize new DWARFv5 C11, C++11 and C++14 DW_LANG constants.
      dwarf.c handle new DWARFv5 C11, C++11 and C++14 DW_LANG constants.
      Display DW_LANG_C11 as (C11).

Markus Trippelsdorf (1):
      BFD: Add support for more than one plugin in lib/bfd-plugins

Martin Galvan (1):
      frame.c: Fix the check for FID_STACK_INVALID in frame_id_eq()

Matthew Fortune (12):
      Fix bad @value references in MIPS documentation
      Show information about unknown ASEs and extensions in .MIPS.abiflags
      MIPS Documentation fixes
      Fix -Wshadow warning
      Update .MIPS.abiflags to support MIPS R6
      Fix segfault when creating a dso with discarded .dynsym section.
      Add in a JALRC alias and fix the NAL instruction.
      Fix octeon3 testsuite fallout
      Fix undefined weak symbol reloc tests
      Fix all failing FPXX tests for tx39-elf.
      Fix octeon3 tests for targets with default abi != n32
      Rework the alignment check for BFD_RELOC_MIPS_18_PCREL_S3.

Max Filippov (1):
      Fix trampolines search code for conditional branches

Mihail-Marian Nistor (1):
      gdb/17394: cannot put breakpoint only in selected ASM file.

Naveen H.S (1):
      MIPS: Add Octeon 3 support

Nick Bull (1):
      New python events: inferior call, register/memory changed.

Nick Clifton (61):
      This patch closes a potential security hole in applications that use
      Fix a seg-fault in strings and other binutuils when parsing a corrupt PE
      This fixes more seg-faults in tools like "strings" and "objdump" when
      This patch fixes a flaw in the SREC parser which could cause a stack overflow
      More fixes for corrupt binaries crashing the binutils.
      Updated/new translations provided by the Translations Project.
      Fixes another memory corruption bug introduced by patches for PR 17512.
      Fix error message strings so that they can be translated properly.
      Closes another memory corruption, this time due to heap overrun.
      Fixes a seg-fault in the ihex parser when it encounters a malformed ihex file.
      In response to a public outcry the strings program now defaults to using the
      oops - changelog omitted from previous delta.
      Avoid allocating over-large buffers when parsing corrupt binaries.
      Fix an (almost) infinite loop in the tekhex parser.
      Fixes a snafu checking the size of 20-bit immedaite values.
      Import updated translations supplied by the Translation Project.
      More fixes for buffer overruns instigated by corrupt binaries.
      Fixes for crashes running readelf.
      Fix a seg-fault triggered by reading a mal-formed archive.
      More fixes for memory corruption when readelf processes corrupt files.
      Fix problem with linker created sections being mistakenly flagged
      More fixes for processing corrupt files.
      More fixes for reading corrupt ELF files.
      More fixes for memory problems uncovered by file fuzzers.
      Revert changes in previous deltas that introduced new failures into
      Prevent archive memebers with illegal pathnames from being extracted from an archive.
      Add more fixes for inavlid memory accesses triggered by corrupt files.
      More fixes for problems exposed by valgrind and the address sanitizer
      Fix objcopy and strip so that they remove their temporary files even if an error occurs.
      More fixes for assertion failures and out-of-bounds reads by readelf.
      More fixes for invalid memory accesses, uncovered by valgrind and binary fuzzers.
      Prevent a buffer overrun whilst displaying corrupt ARM tags.
      Updated French and Ukranian translations supplied by the Translation Project.
      oops - missed the French translation.
      Fix invalid memory accesses for more corrupt binary files.
      Fix more memory faults uncovered by fuzzing various executables.
      More fixes for readelf problems reading corrupt files.
      More fixes for memory access violations whilst scanning corrupt binaries.
      More fixes for invalid memory accesses triggered by corrupt binaries.
      Fix a null pointer dereference when reading the debug link info from a corrupt file.
      Fix memort access problems exposed by fuzzed binaries.
      More fixes for illegal memory accesses exposed by fuzzed binaries.
      Fixes a seg-fault when displaying the time data for a corrupt archive.
      Resolve more problems with readelf uncovered by fuzzing binary files.
      Fixes for memory access violations exposed by fuzzinf various binaries.
      More fixes for memory access errors triggered by attemps to examine corrupted binaries.
      Fixes a few more memory access violations exposed by fuzzed binaries.
      Add checks for memory access violations exposed by fuzzed archives.
      More fixes for memory access violations exposed by fuzzed binaries.
      Replace calls to abort (in readelf) with informative error messages.
      Fix memory access problems exposed by fuzzed binaries.
      More fixes for invalid memory accesses triggered by fuzzed binaries.
      More fixes for memory access violations triggered by fuzzed binaries.
      Fix a few moere memory access violations.
      Fix a memory access violation triggeed by a fuzzed binary.
      More fixes for memory access violations exposed by fuzzed binaries.
      More fixes for invalid memory accesses exposed by fuzzed binaries.
      Updated translations for the gas and gprof tools.
      Reformat the objdump.1 man output to avoid overlong lines.
      This patch add support for cpu marvell-whitney.
      Reverts an "enhancement" made in a previous delta which complained of

Oleg Endo (1):
      Correct fabs and fneg insns in simulator

Patrick Palka (4):
      checkpoint: print index of new checkpoint in response message
      Fix the processing of Meta-key commands in TUI
      Specify SA_RESTART when registering the SIGWINCH signal handler
      Add myself as write-after-approval GDB maintainer

Pedro Alves (66):
      infrun.c: comment/typo fixes
      breakpoint.c: debug output when we skip inserting a breakpoint
      infrun.c:user_visible_resume_ptid: Don't check singlestep_breakpoints_inserted_p
      Aarch64: Make CPSR a 32-bit register again in the target description
      Fix features/i386/64bit-avx512.xml
      features/Makefile: Add a "clean" rule.
      gdb/regformats: Don't build .dat files that aren't used by GDBserver
      Regenerate AVX512 target description C files
      features/Makefile: Make 'make cfiles' default to generating all C files
      Add read-only markers to generated gdb/regformats/ .dat files
      Really fail inserting software breakpoints on read-only regions
      Reduce Hg packet (select remote general thread) bouncing
      PR17431: following execs with "breakpoint always-inserted on"
      Fix non-stop regressions caused by "breakpoints always-inserted off" changes
      gdb.threads/manythreads.exp: clean up and add comment
      infrun.c:normal_stop: Fix typo in comment
      Split vDSO range lookup to a gdbarch hook
      PR symtab/14466: Work around PR libc/13097 "linux-vdso.so.1"
      Cache the vsyscall/vDSO range per-inferior
      Delete IRIX support
      Delete gdb/regformats/microblaze.dat
      gdbserver/win32: Rewrite debug registers handling
      Decide whether we may have removed breakpoints based on step_over_info
      Rewrite non-continuable watchpoints handling
      infrun.c: add for_each_just_stopped_thread
      Put single-step breakpoints on the bp_location chain
      Remove deprecated_insert_raw_breakpoint and friends
      thread.c: cleanup breakpoint deletion
      Make single-step breakpoints be per-thread
      Non-stop + software single-step archs: don't force displaced-stepping for all single-steps
      Merge remote thread listing methods
      Push pruning old threads down to the target
      remote: get rid of all the T packets when syncing the thread list
      DEC threads: Simplify updating the thread list
      Fix build without libexpat
      Delete Tru64 support
      Make common code handle target_terminal_* idempotency
      PR gdb/17472: With annotations, input while executing in the foreground crashes readline/GDB
      PR gdb/17300: Input after "c -a" crashes readline/GDB
      PR gdb/17471: Repeating a background command makes it foreground
      NEWS: Clarify removed targets
      Remove Vax Ultrix and VAX BSD support
      stepi/nexti: skip signal handler if "handle nostop" signal arrives
      Workaround remote targets that report an empty list to qfThreadInfo
      update bug numbers (GNATS -> Bugzilla) in a few signal related tests
      gdb.base/sigstep.exp: cleanup and make it easier to extend
      Test for PR gdb/17511, spurious SIGTRAP after stepping into+in signal handler
      PR gdb/12623: non-stop crashes inferior, PC adjustment and 1-byte insns
      PR tui/16138, PR tui/17519, and misc failures to initialize the terminal
      TUI: don't let exceptions escape while handling readline key bindings
      PR tui/16138 is about failure to initialize curses resulting in GDB
      Fix uninitialized value access when very first GDB command entered is <RET>
      PR python/17372 - Python hangs when displaying help()
      PR 17408 - assertion failure in switch_back_to_stepped_thread
      This PR shows that GDB can easily trigger an assertion here, in
      garbage collect gdb/breakpoint.c:breakpoint_thread_match
      Revert old nexti prologue check and eliminate in_prologue
      gdb.base/sigstep.exp: xfail gdb/17511 on i?86 Linux
      add a default method for gdbarch_skip_permanent_breakpoint
      make "permanent breakpoints" per location and disableable
      fix skipping permanent breakpoints
      Garbage collect the infwait_state global
      GDBserver: ctrl-c after leader has exited
      GDBserver: don't resume all threads if the Hc thread disapears
      GDBserver: clean up 'cont_thread' handling
      handle 'iconv's that define EILSEQ to ENOENT

Petr Machata (1):
      dwarf.exp: In 64-bit units, emit also abbrev offset as a 64-bit field

Philipp Tomsich (2):
      [AArch64] Add xgene1.
      [AArch64] Add xgene2.

Pierre Muller (3):
      [RFA] Stabs: Ignore N_BNSYM/N_ENSYM entry types
      Fix amd64 dwarf register number mapping (MMX register and higher)
      This patch adds support for printing out the pdata section of PE objects.

Rainer Orth (1):
      Fix gnu11 fallout on Solaris 10+

Richard Earnshaw (2):
      [AArch64] Fix mis-detection of unpredictable load/store operations with FP regs.
      * config/tc-arm.c (rotate_left): Avoid undefined behaviour when N = 0.

Richard Henderson (1):
      Set ppc COMMONPAGESIZE to 64k

Richard Sandiford (1):
      bfd/

Samuel Thibault (1):
      [Hurd] Fix deallocation after proc_getprocinfo call

Sandra Loosemore (7):
      Refactoring/cleanup of nios2 opcodes and assembler code.
      Update Nios II prologue analysis to remove detection of long-obsolete
      Add mach parameter to nios2_find_opcode_hash.
      Refactor Nios II GDB support to use helper functions for disassembly and
      Fix Nios II GDB epilogue detection to handle multiple stack adjustments.
      Fix Nios II prologue analyzer to handle multiple stack adjustments.
      Remove broken nios2 assembler dwim support.

Sergio Durigan Junior (6):
      PR tdep/9390: Fix typo on xstorxstormy16-tdep.c
      Explicitly use language_c when evaluating a SDT probe argument
      Only call {set,clear}_semaphore probe function if they are not NULL
      Partial fix for PR breakpoints/10737: Make syscall info be per-arch instead of global
      Fix build breakage from previous commit
      Merge dg-extract-results.{sh,py} from GCC upstream

Simon Marchi (18):
      Don't prune program spaces when doing "maintenance info program-spaces"
      Exit code of exited inferiors in -list-thread-groups
      Small fixes to the Python API doc
      tui: Fix newterm call for older ncurses
      Fix test always passing in python/py-linetable.exp
      Fix prints in tests for Python 3
      Fix Python help() test for Python 3
      Remove duplicate comment
      Fix comment typo
      Fix make_cleanup_dtor signature to match declaration
      Restore terminal state in mi_thread_exit (PR gdb/17627)
      Introduce target_is_gdbserver
      Only leave dprintf inserted if it is marked as persistent (PR breakpoints/17012)
      python extended prompt: Use os.getcwd() instead of os.getcwdu()
      Fix build with Python 3.4 (PR python/16784)
      testsuite: expect possible pagination when starting gdb
      Introduce utility function find_inferior_ptid
      A few comment cleanups

Siva Chandra (8):
      Non trivial return value tests.
      Fix gnuv3_pass_by_reference to lookup copy c-tors with qualified args.
      Add new non-trial return value tests.
      Fix gnuv3_pass_by_reference to treat dynamic classes as non-trivial.
      Guard a call to TYPE_TARGET_TYPE in gnuv3_pass_by_reference.
      Fix evaluation of method calls under EVAL_SKIP.
      Enable chained function calls in C++ expressions.
      Check that thread stack temps are not already enabled before enabling them.

Sriraman Tallam (1):
      2014-09-29  Sriraman Tallam  <tmsriram@google.com>

Stan Shebs (1):
      Add Yao Qi as global maintainer

Steve Ellcey (1):
      2014-12-05  Steve Ellcey  <sellcey@mips.com>

Terry Guo (4):
      2014-09-29  Terry Guo  <terry.guo@arm.com>
      Enable to link ARM object file that hasn't attribute section.
      Support ARM Cortex-M7
      Calculate ARM arch attribute after relaxation

Tom Tromey (8):
      introduce ui_file_write_for_put
      add gcc/gdb interface files
      add some missing ops to DWARF assembler
      add make_unqualified_type
      add gnu_triplet_regexp gdbarch method
      split dwarf2_fetch_cfa_info from dwarf2_compile_expr_to_ax
      make dwarf_expr_frame_base_1 public
      the "compile" command

Tristan Gingold (4):
      Add NEWS markers for 2.25.
      src-release.sh: configure using --target.
      Bump bfd version.
      Darwin: sanitize %gs and %fs values.

Ulrich Weigand (4):
      Work around GCC bug 63748
      Remove (dead-code) native core file sniffers on Linux targets
      Use core regset iterators on GNU Hurd
      Use core regset iterators on Sparc Solaris

Victor Kamensky (4):
      ARM: plt_size functions need to read instructions in right byte order
      ARM: extract_arm_insn function need to read instrs correctly in be8 case
      ARM: arm_breakpoint should be little endian form in case for arm BE8
      read_pieced_value do big endian processing only in case of valid gdb_regnum

Will Newton (3):
      include/elf/aarch64.h: Add reloc numbers from ABI release 1.0
      ld/testsuite/ld-unique: Fix running unique tests on ARM
      bfd/elf-attrs.c: Fix possible infinite loop parsing attributes

Yao Qi (66):
      Fix typo in thumb_in_function_epilogue_p
      Skip dlopen-libpthread.exp in cross testing
      Error in build_executable_own_libs for non-native target
      Remove unused local variable
      No longer pull thread list explicitly
      Clean up server-kill.exp
      Get GDBserver pid on remote target
      Enable qTStatus packet in case it is disabled
      Use mi_varobj_update in mi-var-child.exp and mi2-var-child.exp
      Fix fail in mi-var-child.exp and mi-var-display.exp
      Clean up gdb.python/ tests
      Fix file name matching on remote host.
      Fix py-parameter.exp for remote host
      Don't check noargs in remotetimeout.exp
      Don't check target_info exists noargs in commands.exp
      Copy xml files to host
      Skip testing argv[0] on target argv[0] isn't available
      Don't remove files copied to host
      Rename py-objfile-script-gdb.py.in to py-objfile-script-gdb.py
      Fix trace file fails on powerpc64
      Fix skipping stack protector on arm
      Close the file in fileio.exp test
      Prepare directory in case test_system fails
      Don't replace '\' with '\\' in before_prompt_hook
      Match the working directory on remote host
      Add missing changelog entries
      New proc _handle_attribute
      DW attribute macro MACRO_AT_func and MACRO_AT_range
      Get start and end address of main in dwz.exp
      Use Dwarf::assemble in implptr-optimized-out.exp
      Fix implptr-optimized-out.exp fail
      Fix dw2-ifort-parameter.exp fail with clang
      Add missing parenthesis
      Don't set CC in config/i386/go32.mh
      Make IMPORTED_GNULIB_MODULES in alphabetical order
      Import alloca explicitly
      Include alloca.h unconditionally
      Import memchr explicitly
      Import wchar and wctype-h explicitly
      Include wchar.h and wctype.h unconditionally
      Import errno explicitly
      [arm] Fix fails in dw2-compdir-oldgcc.exp
      Use MACRO_AT_func in entry-values.exp
      Refine read_string
      Match library name prefixed with sysroot
      Fix date in changelog
      Import readlink
      Use readlink unconditionally
      Import lstat
      Use lstat unconditionally
      Import canonicalize-lgpl
      Use canonicalize_file_name unconditionally
      Import rename module
      [arm] compute framereg and framesize when needed
      Don't enable gdbtk in testsuite
      Use standard_testfile in i386-bp_permanent.exp
      Fix parallel testing issues in gdb.guile tests
      Revert: Don't enable gdbtk in testsuite
      Don't scan prologue past epilogue
      Improve arm_skip_prologue by using arm_analyze_prologue
      Replace ARG_MAX with ARG_LAST
      Move NEWS entries to the right section
      Remove h8300_print_float_info
      Refactor gdbarch method print_float_info
      MIPS: Provide FPU info and decode FCSR in `info float'
      MIPS SDE OS ABI support

-----------------------------------------------------------------------
Comment 9 cvs-commit@gcc.gnu.org 2014-12-31 07:22:38 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, gdb-7.8-branch has been updated
       via  ec95c61a84a69b706714793a15bda0c5801b6db9 (commit)
      from  f0df25af07d11fcb5bd3c861eac6d6a82432b22e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ec95c61a84a69b706714793a15bda0c5801b6db9

commit ec95c61a84a69b706714793a15bda0c5801b6db9
Author: Joel Brobecker <brobecker@adacore.com>
Date:   Fri Nov 21 04:59:35 2014 +0100

    Lift DWARF unwinder restriction in dwarf2-frame.c::dwarf2_frame_cfa
    
    GDB is currently broken on all SPARC targets when using GCC 4.9.
    When trying to print any local variable:
    
        (gdb) p x
        can't compute CFA for this frame
    
    This is related to the fact that the compiler now generates DWARF 4
    debugging info by default, and in particular that it now emits
    DW_OP_call_frame_cfa, which triggers a limitation in dwarf2_frame_cfa:
    
       /* This restriction could be lifted if other unwinders are known to
          compute the frame base in a way compatible with the DWARF
          unwinder.  */
       if (!frame_unwinder_is (this_frame, &dwarf2_frame_unwind)
           && !frame_unwinder_is (this_frame, &dwarf2_tailcall_frame_unwind))
         error (_("can't compute CFA for this frame"));
    
    We couldn't append the dwarf2 unwinder to all SPARC targets because
    it does not work properly with StackGhost:
        https://www.sourceware.org/ml/gdb-patches/2014-07/msg00012.html
    
    We also later discovered that using the DWARF2 unwinder means
    using it for computing the function's return address, which
    is buggy when it comes to functions returning a struct (where
    the return address is saved-pc+12 instead of saved-pc+8).
    This is because GCC is emitting the info about the return address
    as %o7/%i7 instead of the actual return address.  For functions
    that have debugging info, we compensate by looking at the function's
    return type and add the extra +4, but for function without debug
    info, we're stuck.
    
    EricB and I twisted the issue in all the directions we could think of,
    and unfortunately couldn't find a way to make it work without
    introduction one regression or another.
    
    But, stepping back a little, just removing the restriction seems to work
    well for us on all both sparc-elf and {sparc,sparc64}-solaris.
    After reviewing the previous discussions about this test, I could
    not figure out whether some unwinders were already known to have
    incompatible CFAs or if the concern was purely theoretical:
        https://www.sourceware.org/ml/gdb-patches/2009-06/msg00191.html
        https://www.sourceware.org/ml/gdb-patches/2009-07/msg00570.html
        https://www.sourceware.org/ml/gdb-patches/2009-09/msg00027.html
    
    At the moment, we took the approach of trying it out, and see what
    happens...
    
    gdb/ChangeLog:
    
            PR backtrace/16215:
            * dwarf2-frame.c (dwarf2_frame_cfa): Remove the restriction
            the frame unwinder must either be the dwarf2_frame_unwind
            or the dwarf2_tailcall_frame_unwind.  Verify that this_frame's
            stack_addr is valid before calling get_frame_base.  Throw
            an error if not valid.
    
    Tested on sparc-solaris and sparc-elf with AdaCore's testsuite
    (the FSF testsuite crashes all of AdaCore's solaris machines).

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

Summary of changes:
 gdb/ChangeLog      |    9 +++++++++
 gdb/dwarf2-frame.c |   12 ++++++------
 2 files changed, 15 insertions(+), 6 deletions(-)
Comment 10 Joel Brobecker 2015-01-15 11:40:28 UTC
Fixed in 7.8 and master (in time for 7.9).