This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gdb and binutils branch master updated. da2b2fdf57a96f7a5b6b153e94afb747e212b17f


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  da2b2fdf57a96f7a5b6b153e94afb747e212b17f (commit)
      from  6eeee81c8e59511962bdd83df5e7785bfdf871d2 (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=da2b2fdf57a96f7a5b6b153e94afb747e212b17f

commit da2b2fdf57a96f7a5b6b153e94afb747e212b17f
Author: Tom Tromey <tromey@redhat.com>
Date:   Wed Nov 13 11:10:55 2013 -0700

    handle an unspecified return address column
    
    Debugging PR 16155 further, I found that the DWARF unwinder found the
    function in question, but thought it had no registers saved
    (fs->regs.num_regs == 0).
    
    It seems to me that if a frame does not specify the return address
    column, or if the return address column is explicitly marked as
    DWARF2_FRAME_REG_UNSPECIFIED, then we should set the
    "undefined_retaddr" flag and let the DWARF unwinder gracefully stop.
    
    This patch implements that idea.
    
    With this patch the backtrace works properly:
    
        (gdb) bt
        #0  0x0000007fb7ed485c in nanosleep () from /lib64/libc.so.6
        #1  0x0000007fb7ed4508 in sleep () from /lib64/libc.so.6
        #2  0x00000000004008bc in thread_function (arg=0x4) at threadapply.c:73
        #3  0x0000007fb7fad950 in start_thread () from /lib64/libpthread.so.0
        #4  0x0000007fb7f0956c in clone () from /lib64/libc.so.6
    
    2013-11-22  Tom Tromey  <tromey@redhat.com>
    
    	PR backtrace/16155:
    	* dwarf2-frame.c (dwarf2_frame_cache): Set undefined_retaddr if
    	the return address column is unspecified.
    
    2013-11-22  Tom Tromey  <tromey@redhat.com>
    
    	* gdb.dwarf2/dw2-bad-cfi.c: New file.
    	* gdb.dwarf2/dw2-bad-cfi.exp: New file.
    	* gdb.dwarf2/dw2-bad-cfi.S: New file.

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

Summary of changes:
 gdb/ChangeLog                            |    6 +
 gdb/dwarf2-frame.c                       |    4 +
 gdb/testsuite/ChangeLog                  |    6 +
 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.S   |  216 ++++++++++++++++++++++++++++++
 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.c   |   28 ++++
 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.exp |   42 ++++++
 6 files changed, 302 insertions(+), 0 deletions(-)
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.S
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.c
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-bad-cfi.exp


hooks/post-receive
-- 
gdb and binutils


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]