From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30322 invoked by alias); 2 Aug 2004 22:00:29 -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 30309 invoked from network); 2 Aug 2004 22:00:28 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org with SMTP; 2 Aug 2004 22:00:28 -0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.10/8.12.10) with ESMTP id i72M0Se3023704 for ; Mon, 2 Aug 2004 18:00:28 -0400 Received: from localhost.redhat.com (to-dhcp51.toronto.redhat.com [172.16.14.151]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id i72M0Ra29940; Mon, 2 Aug 2004 18:00:28 -0400 Received: from gnu.org (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id 425492B9D; Mon, 2 Aug 2004 18:00:26 -0400 (EDT) Message-ID: <410EB97A.7040900@gnu.org> Date: Mon, 02 Aug 2004 22:00:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-GB; rv:1.4.1) Gecko/20040801 MIME-Version: 1.0 To: gdb-patches@sources.redhat.com Subject: [commit] Eliminate deprecated_register_virtual_* from core Content-Type: multipart/mixed; boundary="------------050401000700050809080300" X-SW-Source: 2004-08/txt/msg00050.txt.bz2 This is a multi-part message in MIME format. --------------050401000700050809080300 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 281 Hello, More cleanup. Since the register has only one size, determined by register_type, it's possible to eliminate references to DEPRECATED_REGISTER_VIRTUAL_TYPE and DEPRECATED_REGISTER_VIRTUAL_SIZE (and a few DEPRECATED_REGISTER_RAW_SIZE while I'm there). committed, Andrew --------------050401000700050809080300 Content-Type: text/plain; name="diffs" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="diffs" Content-length: 7344 2004-08-02 Andrew Cagney * regcache.h: Delete DEPRECATED_REGISTER_VIRTUAL_SIZE and DEPRECATED_REGISTER_RAW_SIZE from comments. * regcache.c (init_regcache_descr, regcache_dump): Do not check or use DEPRECATED_REGISTER_VIRTUAL_SIZE and DEPRECATED_REGISTER_RAW_SIZE. * findvar.c (value_of_register): Simplify by assuming that the registers raw and virtual sizes are identical. * regcache.h: Delete DEPRECATED_REGISTER_VIRTUAL_TYPE in comment. * arch-utils.c (generic_register_size): Simplify by assuming register_type. Index: arch-utils.c =================================================================== RCS file: /cvs/src/src/gdb/arch-utils.c,v retrieving revision 1.120 diff -p -u -r1.120 arch-utils.c --- arch-utils.c 20 Jun 2004 18:10:13 -0000 1.120 +++ arch-utils.c 2 Aug 2004 21:57:38 -0000 @@ -289,13 +289,7 @@ int generic_register_size (int regnum) { gdb_assert (regnum >= 0 && regnum < NUM_REGS + NUM_PSEUDO_REGS); - if (gdbarch_register_type_p (current_gdbarch)) - return TYPE_LENGTH (gdbarch_register_type (current_gdbarch, regnum)); - else - /* FIXME: cagney/2003-03-01: Once all architectures implement - gdbarch_register_type(), this entire function can go away. It - is made obsolete by register_size(). */ - return TYPE_LENGTH (DEPRECATED_REGISTER_VIRTUAL_TYPE (regnum)); /* OK */ + return TYPE_LENGTH (gdbarch_register_type (current_gdbarch, regnum)); } /* Assume all registers are adjacent. */ Index: findvar.c =================================================================== RCS file: /cvs/src/src/gdb/findvar.c,v retrieving revision 1.75 diff -p -u -r1.75 findvar.c --- findvar.c 9 Jun 2004 20:42:28 -0000 1.75 +++ findvar.c 2 Aug 2004 21:57:38 -0000 @@ -282,18 +282,8 @@ value_of_register (int regnum, struct fr reg_val = allocate_value (register_type (current_gdbarch, regnum)); - /* Convert raw data to virtual format if necessary. */ - - if (DEPRECATED_REGISTER_RAW_SIZE (regnum) == DEPRECATED_REGISTER_VIRTUAL_SIZE (regnum)) - memcpy (VALUE_CONTENTS_RAW (reg_val), raw_buffer, - DEPRECATED_REGISTER_RAW_SIZE (regnum)); - else - internal_error (__FILE__, __LINE__, - "Register \"%s\" (%d) has conflicting raw (%d) and virtual (%d) size", - REGISTER_NAME (regnum), - regnum, - DEPRECATED_REGISTER_RAW_SIZE (regnum), - DEPRECATED_REGISTER_VIRTUAL_SIZE (regnum)); + memcpy (VALUE_CONTENTS_RAW (reg_val), raw_buffer, + register_size (current_gdbarch, regnum)); VALUE_LVAL (reg_val) = lval; VALUE_ADDRESS (reg_val) = addr; VALUE_REGNO (reg_val) = regnum; Index: regcache.c =================================================================== RCS file: /cvs/src/src/gdb/regcache.c,v retrieving revision 1.120 diff -p -u -r1.120 regcache.c --- regcache.c 2 Aug 2004 21:39:35 -0000 1.120 +++ regcache.c 2 Aug 2004 21:57:38 -0000 @@ -144,20 +144,6 @@ init_regcache_descr (struct gdbarch *gdb buffer. Ulgh! */ descr->sizeof_raw_registers = descr->sizeof_cooked_registers; - /* Sanity check. Confirm that there is agreement between the - regcache and the target's redundant DEPRECATED_REGISTER_BYTE (new - targets should not even be defining it). */ - for (i = 0; i < descr->nr_cooked_registers; i++) - { - if (DEPRECATED_REGISTER_BYTE_P ()) - gdb_assert (descr->register_offset[i] == DEPRECATED_REGISTER_BYTE (i)); -#if 0 - gdb_assert (descr->sizeof_register[i] == DEPRECATED_REGISTER_RAW_SIZE (i)); - gdb_assert (descr->sizeof_register[i] == DEPRECATED_REGISTER_VIRTUAL_SIZE (i)); -#endif - } - /* gdb_assert (descr->sizeof_raw_registers == DEPRECATED_REGISTER_BYTES (i)); */ - return descr; } @@ -1311,25 +1297,8 @@ regcache_dump (struct regcache *regcache if (regnum < 0) fprintf_unfiltered (file, " %5s ", "Size"); else - { - fprintf_unfiltered (file, " %5ld", - regcache->descr->sizeof_register[regnum]); - if ((regcache->descr->sizeof_register[regnum] - != DEPRECATED_REGISTER_RAW_SIZE (regnum)) - || (regcache->descr->sizeof_register[regnum] - != DEPRECATED_REGISTER_VIRTUAL_SIZE (regnum)) - || (regcache->descr->sizeof_register[regnum] - != TYPE_LENGTH (register_type (regcache->descr->gdbarch, - regnum))) - ) - { - if (!footnote_register_size) - footnote_register_size = ++footnote_nr; - fprintf_unfiltered (file, "*%d", footnote_register_size); - } - else - fprintf_unfiltered (file, " "); - } + fprintf_unfiltered (file, " %5ld", + regcache->descr->sizeof_register[regnum]); /* Type. */ { @@ -1373,7 +1342,7 @@ regcache_dump (struct regcache *regcache regcache_raw_read (regcache, regnum, buf); fprintf_unfiltered (file, "0x"); dump_endian_bytes (file, TARGET_BYTE_ORDER, buf, - DEPRECATED_REGISTER_RAW_SIZE (regnum)); + regcache->descr->sizeof_register[regnum]); } } @@ -1387,7 +1356,7 @@ regcache_dump (struct regcache *regcache regcache_cooked_read (regcache, regnum, buf); fprintf_unfiltered (file, "0x"); dump_endian_bytes (file, TARGET_BYTE_ORDER, buf, - DEPRECATED_REGISTER_VIRTUAL_SIZE (regnum)); + regcache->descr->sizeof_register[regnum]); } } Index: regcache.h =================================================================== RCS file: /cvs/src/src/gdb/regcache.h,v retrieving revision 1.42 diff -p -u -r1.42 regcache.h --- regcache.h 24 Jul 2004 01:00:20 -0000 1.42 +++ regcache.h 2 Aug 2004 21:57:38 -0000 @@ -116,45 +116,13 @@ extern int register_offset_hack (struct /* The type of a register. This function is slightly more efficient then its gdbarch vector counterpart since it returns a precomputed - value stored in a table. - - NOTE: cagney/2002-08-17: The original macro was called - DEPRECATED_REGISTER_VIRTUAL_TYPE. This was because the register - could have different raw and cooked (nee virtual) representations. - The CONVERTABLE methods being used to convert between the two - representations. Current code does not do this. Instead, the - first [0..NUM_REGS) registers are 1:1 raw:cooked, and the type - exactly describes the register's representation. Consequently, the - ``virtual'' has been dropped. - - FIXME: cagney/2002-08-17: A number of architectures, including the - MIPS, are currently broken in this regard. */ + value stored in a table. */ extern struct type *register_type (struct gdbarch *gdbarch, int regnum); /* Return the size of register REGNUM. All registers should have only - one size. - - FIXME: cagney/2003-02-28: - - Unfortunately, thanks to some legacy architectures, this doesn't - hold. A register's cooked (nee virtual) and raw size can differ - (see MIPS). Such architectures should be using different register - numbers for the different sized views of identical registers. - - Anyway, the up-shot is that, until that mess is fixed, core code - can end up being very confused - should the RAW or VIRTUAL size be - used? As a rule of thumb, use DEPRECATED_REGISTER_VIRTUAL_SIZE in - cooked code, but with the comment: - - OK: REGISTER_VIRTUAL_SIZE - - or just - - OK - - appended to the end of the line. */ + one size. */ extern int register_size (struct gdbarch *gdbarch, int regnum); --------------050401000700050809080300--