From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10345 invoked by alias); 20 Jun 2003 17:09:04 -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 28988 invoked from network); 20 Jun 2003 17:04:47 -0000 Received: from unknown (HELO planck.amplepower.com) (216.39.162.139) by sources.redhat.com with SMTP; 20 Jun 2003 17:04:47 -0000 Received: from [192.168.8.30] (helo=knuth.amplepower.com ident=roth) by planck.amplepower.com with esmtp (Exim 3.36 #1 (Debian)) id 19TP7b-0007pA-00; Fri, 20 Jun 2003 09:52:19 -0700 Date: Fri, 20 Jun 2003 17:09:00 -0000 From: "Theodore A. Roth" X-X-Sender: roth@knuth.amplepower.com To: Andrew Cagney cc: gdb-patches@sources.redhat.com Subject: Re: [RFC:avr] use regcache instead of read_register In-Reply-To: <3EF317E8.8070209@redhat.com> Message-ID: References: <3EF317E8.8070209@redhat.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2003-06/txt/msg00655.txt.bz2 On Fri, 20 Jun 2003, Andrew Cagney wrote: > > Hi, > > > > The ARI caught this and it seems like a trivial change. There is a bit of > > confusion though in the use of current_regcache since the ARI says this: > > > > current regcache 57 Replace current_regcache with explict parameter > > > > What would that explicit parameter be? > > > > If this patch is ok, it brings the ARI count for the AVR down to 0. > > The patch is great. Don't be too worried about current_regcache for > the moment. > > As for what parameter will be added to read_pc, I can give you several > guesses: > > - made redundant by unwind_pc(frame) > - replaced with something that takes the thread id and stop status > > The underlying problem is decr pc after break. Cleaning up that also > involves read_pc, write_pc, and the update frame pc hack. > > Andrew Thanks. Committed. I guess a similar change to d10v_read_pc. Just noticed that the d10v seems to use d10v_unwind_sp instead of *_read_sp. Is it a direct replacement to replace *_read_sp with *_unwind_sp? I didn't see that before I did the commit. Ted Roth > > > > 2003-06-19 Theodore A. Roth > > > > * avr-tdep.c (avr_read_pc): Use regcache instead of read_register. > > (avr_read_sp): Ditto. > > > > > > > > > > 2003-06-19 Theodore A. Roth > > > > * avr-tdep.c (avr_read_pc): Use regcache instead of read_register. > > (avr_read_sp): Ditto. > > > > Index: avr-tdep.c > > =================================================================== > > RCS file: /cvs/src/src/gdb/avr-tdep.c,v > > retrieving revision 1.64 > > diff -u -r1.64 avr-tdep.c > > --- avr-tdep.c 20 Jun 2003 05:53:42 -0000 1.64 > > +++ avr-tdep.c 20 Jun 2003 06:09:27 -0000 > > @@ -324,12 +324,12 @@ > > avr_read_pc (ptid_t ptid) > > { > > ptid_t save_ptid; > > - CORE_ADDR pc; > > + ULONGEST pc; > > CORE_ADDR retval; > > > > save_ptid = inferior_ptid; > > inferior_ptid = ptid; > > - pc = (int) read_register (AVR_PC_REGNUM); > > + regcache_cooked_read_unsigned (current_regcache, AVR_PC_REGNUM, &pc); > > inferior_ptid = save_ptid; > > retval = avr_make_iaddr (pc); > > return retval; > > @@ -349,7 +349,10 @@ > > static CORE_ADDR > > avr_read_sp (void) > > { > > - return (avr_make_saddr (read_register (AVR_SP_REGNUM))); > > + ULONGEST sp; > > + > > + regcache_cooked_read_unsigned (current_regcache, AVR_SP_REGNUM, &sp); > > + return (avr_make_saddr (sp)); > > } > > > > static int > > >