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. 194cca41192efa65f710967e3149bbc813c12b22


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  194cca41192efa65f710967e3149bbc813c12b22 (commit)
      from  33f8fe58b9a55a0075a90cc9080a1716221a3f81 (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=194cca41192efa65f710967e3149bbc813c12b22

commit 194cca41192efa65f710967e3149bbc813c12b22
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Nov 21 15:20:09 2013 +0000

    Make use of the frame stash to detect wider stack cycles.
    
    Given we already have the frame id stash, which holds the ids of all
    frames in the chain, detecting corrupted stacks with wide stack cycles
    with non-consecutive dup frame ids is just as cheap as just detecting
    cycles in consecutive frames:
    
     #0 frame_id1
     #1 frame_id2
     #2 frame_id3
     #3 frame_id1
     #4 frame_id2
     #5 frame_id3
     #6 frame_id1
     ... forever ...
    
    We just need to check whether the stash already knows about a given
    frame id instead of comparing the ids of the previous/this frames.
    
    Tested on x86_64 Fedora 17.
    
    gdb/
    2013-11-22  Pedro Alves  <palves@redhat.com>
    	    Tom Tromey  <tromey@redhat.com>
    
    	* frame.c (frame_stash_add): Now returns whether a frame with the
    	same ID was already known.
    	(compute_frame_id): New function, factored out from get_frame_id.
    	(get_frame_id): No longer lazilly compute the frame id here.
    	(get_prev_frame_if_no_cycle): New function.  Detects wider stack
    	cycles.
    	(get_prev_frame_1): Use it instead of get_prev_frame_raw directly,
    	and checking for stack cycles here.

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

Summary of changes:
 gdb/ChangeLog |   12 +++++
 gdb/frame.c   |  151 +++++++++++++++++++++++++++++++++------------------------
 2 files changed, 100 insertions(+), 63 deletions(-)


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]