From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12351 invoked by alias); 12 Apr 2006 18:18:26 -0000 Received: (qmail 12343 invoked by uid 22791); 12 Apr 2006 18:18:25 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 12 Apr 2006 18:18:23 +0000 Received: from elgar.sibelius.xs4all.nl (root@elgar.sibelius.xs4all.nl [192.168.0.2]) by sibelius.xs4all.nl (8.13.4/8.13.4) with ESMTP id k3CIH7PZ002362; Wed, 12 Apr 2006 20:17:07 +0200 (CEST) Received: from elgar.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6) with ESMTP id k3CIH7fu019947; Wed, 12 Apr 2006 20:17:07 +0200 (CEST) Received: (from kettenis@localhost) by elgar.sibelius.xs4all.nl (8.13.6/8.13.6/Submit) id k3CIH7nA021495; Wed, 12 Apr 2006 20:17:07 +0200 (CEST) Date: Wed, 12 Apr 2006 18:18:00 -0000 Message-Id: <200604121817.k3CIH7nA021495@elgar.sibelius.xs4all.nl> From: Mark Kettenis To: jimb@red-bean.com CC: msnyder@redhat.com, gdb-patches@sourceware.org, drow@false.org In-reply-to: <8f2776cb0604112142i32dcdf0dic8f44f2989311786@mail.gmail.com> (jimb@red-bean.com) Subject: Re: [RFA/RFC] dwarf2-frame read_reg References: <443C7529.7020206@redhat.com> <8f2776cb0604112142i32dcdf0dic8f44f2989311786@mail.gmail.com> 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-04/txt/msg00150.txt.bz2 > Date: Tue, 11 Apr 2006 21:42:01 -0700 > From: "Jim Blandy" > > On 4/11/06, Michael Snyder wrote: > > I want you guys to vett this change. I was getting wrong results > > on a target where sizeof (SP) != sizeof (void *). The local func > > read_reg was calling extract_unsigned_integer with the wrong size. > > Well, extract_typed_address requires the type of the register to be > some sort of pointer. read_reg is given as a callback to the Dwarf > expression evaluator in dwarf2expr.c, so it could be handed any > register at all. > > How about unpack_long (buf, register_type (gdbarch, regnum))? > Definitely regression-test this on several platforms... This is likely to be wrong for platforms where addresses are signed. Michael, what kind of funny target is this? It has a stack pointer register, but its size is different from the size of pointers? Mark