From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22313 invoked by alias); 6 Dec 2004 03:40:20 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 22292 invoked from network); 6 Dec 2004 03:40:18 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sourceware.org with SMTP; 6 Dec 2004 03:40:18 -0000 Received: from drow by nevyn.them.org with local (Exim 4.34 #1 (Debian)) id 1Cb9jR-0008KB-U6; Sun, 05 Dec 2004 22:40:14 -0500 Date: Mon, 06 Dec 2004 03:45:00 -0000 From: Daniel Jacobowitz To: Randolph Chung Cc: gdb-patches@sources.redhat.com Subject: Re: [patch/rfa] allow unwinding "past main" for dummy frames Message-ID: <20041206034013.GA31944@nevyn.them.org> Mail-Followup-To: Randolph Chung , gdb-patches@sources.redhat.com References: <20041206032726.GB6359@tausq.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20041206032726.GB6359@tausq.org> User-Agent: Mutt/1.5.5.1+cvs20040105i X-SW-Source: 2004-12/txt/msg00150.txt.bz2 On Sun, Dec 05, 2004 at 07:27:26PM -0800, Randolph Chung wrote: > On hpux, we push a small bit of code on the stack to implement function > calls from gdb. The stack trampoline contains a return address that > points back to the current function. this is needed to properly restore > the space registers (see hppa_hpux_push_dummy_code in hppa-hpux-tdep.c > for a much more detailed explanation). The upshot of all of this is > that when we do a backtrace from a gdb-called function, a backtrace can > be prematurely truncated at a dummy frame. Since it doesn't make sense > anyway to stop unwinding at dummy frames, this patch skips the "main > function" detection logic for dummy frames. The same logic is already > there for checking against the entry function a bit farther down in > get_prev_frame (). > > ok? Could you explain to me how inside_main_func is returning true for a dummy frame? The code is there for inside_entry_func because we used to use the actual entry point as a location for the dummy frame. -- Daniel Jacobowitz