From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28172 invoked by alias); 9 May 2002 16:45:48 -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 28164 invoked from network); 9 May 2002 16:45:47 -0000 Received: from unknown (HELO localhost.redhat.com) (216.138.202.10) by sources.redhat.com with SMTP; 9 May 2002 16:45:47 -0000 Received: from cygnus.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id 6F46B3DB9; Thu, 9 May 2002 12:45:54 -0400 (EDT) Message-ID: <3CDAA7C2.7060106@cygnus.com> Date: Thu, 09 May 2002 09:45:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0rc1) Gecko/20020429 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Richard.Earnshaw@arm.com Cc: gdb@sources.redhat.com Subject: Re: ARM and virtual/raw registers References: <200205091431.PAA15329@cam-mail2.cambridge.arm.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2002-05/txt/msg00082.txt.bz2 > In addition to the above, we also have the case of the CPSR register. On > old ARM chips (or on non-thumb chips up to armv4), this register is, or > can be mimicked as being, part of the PC. This suggests to me that the > current decoding shenanigans that are currently hidden in some of the > back-end code should probably be moved into the virtual-raw conversion > layer. That is, register_convirt_{to,from}_virtual(CPSR) (or whatever > it's really called) should be responsible for the updating of raw-PC or > raw-CPSR as appropriate. Hmm, what exactly do you mean by mimicked? Can the entire register contents be constructed from information found in the other raw/hardware registers? If that is the case then making it a pseudo-register and using register_{read,write} should do the trick. (notice - convert-to-virtual free zone). enjoy, Andrew