From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27959 invoked by alias); 24 Jan 2006 21:27:56 -0000 Received: (qmail 27950 invoked by uid 22791); 24 Jan 2006 21:27:55 -0000 X-Spam-Check-By: sourceware.org Received: from zproxy.gmail.com (HELO zproxy.gmail.com) (64.233.162.205) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 24 Jan 2006 21:27:54 +0000 Received: by zproxy.gmail.com with SMTP id x3so1273613nzd for ; Tue, 24 Jan 2006 13:27:52 -0800 (PST) Received: by 10.36.251.34 with SMTP id y34mr5191512nzh; Tue, 24 Jan 2006 13:27:52 -0800 (PST) Received: by 10.37.2.42 with HTTP; Tue, 24 Jan 2006 13:27:52 -0800 (PST) Message-ID: <8f2776cb0601241327t4b9e4820l532d1133484879bb@mail.gmail.com> Date: Tue, 24 Jan 2006 21:27:00 -0000 From: Jim Blandy To: NZG Subject: Re: gdb code review, pointer madness Cc: gdb-patches@sourceware.org, Carlos Manuel Duclos Vergara , "Friedrich, Lars" In-Reply-To: <200601241328.33774.ngustavson@emacinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <200601231438.26040.ngustavson@emacinc.com> <8f2776cb0601231251v253ad0dft98eb2b558531d99@mail.gmail.com> <200601241118.02955.ngustavson@emacinc.com> <200601241328.33774.ngustavson@emacinc.com> X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2006-01/txt/msg00377.txt.bz2 On 1/24/06, NZG wrote: > Looks like this particular flaw is an optimization trick, digging down fa= rther > the correct pointer does appear to get there. > > Something is wrong with the frame call on the sential frame (because it > crashes the debugger) but this is not it. Well, if you are able to come up with some reproduction instructions that don't require exotic hardware, let us know. The sentinel frame should be very simple to deal with: "unwinding" a register from the sentinel frame simply returns its current value from the chip. If you're not getting the current registers' values unwound from the sentinel frame, then GDB simply isn't getting the register values right; you'll need to look at the communication between GDB and the board.