From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13612 invoked by alias); 6 Oct 2003 06:40:17 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 13604 invoked from network); 6 Oct 2003 06:40:17 -0000 Received: from unknown (HELO artax.karlin.mff.cuni.cz) (195.113.31.125) by sources.redhat.com with SMTP; 6 Oct 2003 06:40:17 -0000 Received: by artax.karlin.mff.cuni.cz (Postfix, from userid 29129) id 8BAEA3FA4; Mon, 6 Oct 2003 08:40:16 +0200 (CEST) Date: Mon, 06 Oct 2003 06:40:00 -0000 From: Josef Zlomek To: Richard Henderson Cc: gdb@sources.redhat.com Subject: Re: Problem with location lists and variables on stack Message-ID: <20031006064016.GA13046@artax.karlin.mff.cuni.cz> References: <20031001144330.GA11707@artax.karlin.mff.cuni.cz> <20031001144937.GA4613@nevyn.them.org> <20031001154415.GA15387@artax.karlin.mff.cuni.cz> <20031001155417.GA13942@nevyn.them.org> <20031001160318.GA17042@artax.karlin.mff.cuni.cz> <20031001162255.GA25428@nevyn.them.org> <20031001174142.GA21499@artax.karlin.mff.cuni.cz> <20031001174427.GA13387@nevyn.them.org> <20031006062216.GB26462@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20031006062216.GB26462@redhat.com> User-Agent: Mutt/1.5.4i X-SW-Source: 2003-10/txt/msg00088.txt.bz2 > > No, but DW_AT_frame_base should be a location list describing the > > changes in the frame base. > > How can we just describe "please use the CFA" and avoid duplicating > this part of the unwind info? Daniel Berlin has already written support for GCC to generate location list for DW_AT_frame_base. DW_AT_frame_base is a location list as any other (actually only the offsets relatively to original stack pointer at function start are needed). GDB then uses this location list to adjust offsets of other variables addressed using stack pointer. With Daniel Jacobowitz's fix for GDB it works :-) i.e. you can see correct values for variables located on stack even when stack pointer changes because of push, pop, etc. Current GCC patch can be downloaded from: http://artax.karlin.mff.cuni.cz/~zlomj9am/download/vt-main.patch (because currently GCC is in stage 2 it has to wait until GCC is in stage 1) Josef