From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28367 invoked by alias); 15 May 2002 18:46:54 -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 28359 invoked from network); 15 May 2002 18:46:52 -0000 Received: from unknown (HELO cygnus.com) (205.180.83.203) by sources.redhat.com with SMTP; 15 May 2002 18:46:52 -0000 Received: from localhost.redhat.com (remus.sfbay.redhat.com [172.16.27.252]) by runyon.cygnus.com (8.8.7-cygnus/8.8.7) with ESMTP id LAA08790; Wed, 15 May 2002 11:46:46 -0700 (PDT) Received: by localhost.redhat.com (Postfix, from userid 469) id B720B10FC9; Wed, 15 May 2002 14:46:13 -0400 (EDT) From: Elena Zannoni MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15586.44277.584535.273840@localhost.redhat.com> Date: Wed, 15 May 2002 11:46:00 -0000 To: Richard.Earnshaw@arm.com Cc: Elena Zannoni , Andrew Cagney , gdb@sources.redhat.com Subject: Re: REGISTER_BYTE() and pseudos In-Reply-To: <200205151745.SAA16914@cam-mail2.cambridge.arm.com> References: <15586.40018.722458.418880@localhost.redhat.com> <200205151745.SAA16914@cam-mail2.cambridge.arm.com> X-SW-Source: 2002-05/txt/msg00179.txt.bz2 Richard Earnshaw writes: > > > Yeah, I was going to chime in, but I am behind on this thread. > > Richard, look at the sh-tdep.c file. I checked in the sh5 work. It > > still needs another round of cleaning but ti should pretty much all be > > there. > > OK, I'll have another look. > > The bit I'm worried about though is if we call something like > generic_get_saved_register for a pseudo and we hit a call_dummy frame. > The code in there goes: > > if (PC_IN_CALL_DUMMY (frame->pc, frame->frame, frame->frame)) > { > if (lval) /* found it in a CALL_DUMMY frame */ > *lval = not_lval; > if (raw_buffer) > memcpy (raw_buffer, > generic_find_dummy_frame (frame->pc, frame->frame) + > REGISTER_BYTE (regnum), > REGISTER_RAW_SIZE (regnum)); > return; > > Which will try to look up the pseudo in the buffer even if it isn't there. Hmmm, yes you are probably right. That case is likely broken then. Elena