From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24904 invoked by alias); 29 Apr 2007 01:53:51 -0000 Received: (qmail 24887 invoked by uid 22791); 29 Apr 2007 01:53:49 -0000 X-Spam-Check-By: sourceware.org Received: from mtagate3.de.ibm.com (HELO mtagate3.de.ibm.com) (195.212.29.152) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sun, 29 Apr 2007 02:53:46 +0100 Received: from d12nrmr1607.megacenter.de.ibm.com (d12nrmr1607.megacenter.de.ibm.com [9.149.167.49]) by mtagate3.de.ibm.com (8.13.8/8.13.8) with ESMTP id l3T1rg8W063792 for ; Sun, 29 Apr 2007 01:53:42 GMT Received: from d12av02.megacenter.de.ibm.com (d12av02.megacenter.de.ibm.com [9.149.165.228]) by d12nrmr1607.megacenter.de.ibm.com (8.13.8/8.13.8/NCO v8.3) with ESMTP id l3T1rgCD3354772 for ; Sun, 29 Apr 2007 03:53:42 +0200 Received: from d12av02.megacenter.de.ibm.com (loopback [127.0.0.1]) by d12av02.megacenter.de.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id l3T1rgsI001880 for ; Sun, 29 Apr 2007 03:53:42 +0200 Received: from tuxmaker.boeblingen.de.ibm.com (tuxmaker.boeblingen.de.ibm.com [9.152.85.9]) by d12av02.megacenter.de.ibm.com (8.12.11.20060308/8.12.11) with SMTP id l3T1rgN1001875 for ; Sun, 29 Apr 2007 03:53:42 +0200 Message-Id: <200704290153.l3T1rgN1001875@d12av02.megacenter.de.ibm.com> Received: by tuxmaker.boeblingen.de.ibm.com (sSMTP sendmail emulation); Sun, 29 Apr 2007 03:53:42 +0200 Subject: [commit] Eliminate deprecated_read/write_register_gen To: gdb-patches@sourceware.org Date: Sun, 29 Apr 2007 05:02:00 -0000 From: "Ulrich Weigand" X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2007-04/txt/msg00393.txt.bz2 Hello, this patch eliminates two long-deprecated routines from regcache, deprecated_read_register_gen and deprecated_write_register_gen. deprecated_read_register_gen still had two uses outside of regcache, in remote-sim.c (gdbsim_store_register) and target.c (debug_print_register). The patch replaces both using regcache_cooked_read. The sole remaining uses were read_register and write_register respectively; the patch inlines the function contents there. Tested on s390-ibm-linux. Committed to mainline. Bye, Ulrich ChangeLog: * regcache.c (deprecated_read_register_gen): Remove, inline ... (read_register): ... here. (deprecated_write_register_gen): Remove, inline ... (write_register): ... here. * regcache.h (deprecated_read_register_gen): Remove prototype. (deprecated_write_register_gen): Likewise. * remote-sim.c (gdbsim_store_register): Replace call to deprecated_read_register_gen with regcache_cooked_read. * target.c (debug_print_register): Replace calls to deprecated_read_register_gen and read_register with regcache_cooked_read. diff -urNp gdb-orig/gdb/regcache.c gdb-head/gdb/regcache.c --- gdb-orig/gdb/regcache.c 2007-04-29 02:24:15.310091000 +0200 +++ gdb-head/gdb/regcache.c 2007-04-29 03:25:09.311055789 +0200 @@ -574,14 +574,6 @@ regcache_raw_write_unsigned (struct regc } void -deprecated_read_register_gen (int regnum, gdb_byte *buf) -{ - gdb_assert (current_regcache != NULL); - gdb_assert (current_regcache->descr->gdbarch == current_gdbarch); - regcache_cooked_read (current_regcache, regnum, buf); -} - -void regcache_cooked_read (struct regcache *regcache, int regnum, gdb_byte *buf) { gdb_assert (regnum >= 0); @@ -685,14 +677,6 @@ regcache_raw_write (struct regcache *reg } void -deprecated_write_register_gen (int regnum, gdb_byte *buf) -{ - gdb_assert (current_regcache != NULL); - gdb_assert (current_regcache->descr->gdbarch == current_gdbarch); - regcache_cooked_write (current_regcache, regnum, buf); -} - -void regcache_cooked_write (struct regcache *regcache, int regnum, const gdb_byte *buf) { @@ -806,7 +790,9 @@ ULONGEST read_register (int regnum) { gdb_byte *buf = alloca (register_size (current_gdbarch, regnum)); - deprecated_read_register_gen (regnum, buf); + gdb_assert (current_regcache != NULL); + gdb_assert (current_regcache->descr->gdbarch == current_gdbarch); + regcache_cooked_read (current_regcache, regnum, buf); return (extract_unsigned_integer (buf, register_size (current_gdbarch, regnum))); } @@ -841,7 +827,9 @@ write_register (int regnum, LONGEST val) size = register_size (current_gdbarch, regnum); buf = alloca (size); store_signed_integer (buf, size, (LONGEST) val); - deprecated_write_register_gen (regnum, buf); + gdb_assert (current_regcache != NULL); + gdb_assert (current_regcache->descr->gdbarch == current_gdbarch); + regcache_cooked_write (current_regcache, regnum, buf); } void diff -urNp gdb-orig/gdb/regcache.h gdb-head/gdb/regcache.h --- gdb-orig/gdb/regcache.h 2007-04-29 02:24:15.315090000 +0200 +++ gdb-head/gdb/regcache.h 2007-04-29 03:25:22.384173831 +0200 @@ -157,23 +157,6 @@ extern struct regcache *regcache_dup_no_ extern void regcache_cpy (struct regcache *dest, struct regcache *src); extern void regcache_cpy_no_passthrough (struct regcache *dest, struct regcache *src); -/* NOTE: cagney/2002-11-02: The below have been superseded by the - regcache_cooked_*() functions found above, and the frame_*() - functions found in "frame.h". Take care though, often more than a - simple substitution is required when updating the code. The - change, as far as practical, should avoid adding references to - global variables (e.g., current_regcache, current_frame, - current_gdbarch or the selected frame) and instead refer to - the FRAME or REGCACHE that has been passed into the containing - function as parameters. Consequently, the change typically - involves modifying the containing function so that it takes a FRAME - or REGCACHE parameter. In the case of an architecture vector - method, there should already be a non-deprecated variant that is - parameterized with FRAME or REGCACHE. */ - -extern void deprecated_read_register_gen (int regnum, gdb_byte *myaddr); -extern void deprecated_write_register_gen (int regnum, gdb_byte *myaddr); - /* NOTE: cagney/2002-11-05: This function has been superseeded by regcache_raw_supply(). */ extern void deprecated_registers_fetched (void); diff -urNp gdb-orig/gdb/remote-sim.c gdb-head/gdb/remote-sim.c --- gdb-orig/gdb/remote-sim.c 2007-04-29 02:24:15.321089000 +0200 +++ gdb-head/gdb/remote-sim.c 2007-04-29 03:25:09.335052348 +0200 @@ -353,7 +353,7 @@ gdbsim_store_register (int regno) { char tmp[MAX_REGISTER_SIZE]; int nr_bytes; - deprecated_read_register_gen (regno, tmp); + regcache_cooked_read (current_regcache, regno, tmp); nr_bytes = sim_store_register (gdbsim_desc, REGISTER_SIM_REGNO (regno), tmp, register_size (current_gdbarch, regno)); diff -urNp gdb-orig/gdb/target.c gdb-head/gdb/target.c --- gdb-orig/gdb/target.c 2007-04-29 02:24:15.329088000 +0200 +++ gdb-head/gdb/target.c 2007-04-29 03:25:09.345050915 +0200 @@ -2160,19 +2160,19 @@ debug_print_register (const char * func, fprintf_unfiltered (gdb_stdlog, "(%d)", regno); if (regno >= 0) { - int i; + int i, size = register_size (current_gdbarch, regno); unsigned char buf[MAX_REGISTER_SIZE]; - deprecated_read_register_gen (regno, buf); + regcache_cooked_read (current_regcache, regno, buf); fprintf_unfiltered (gdb_stdlog, " = "); - for (i = 0; i < register_size (current_gdbarch, regno); i++) + for (i = 0; i < size; i++) { fprintf_unfiltered (gdb_stdlog, "%02x", buf[i]); } - if (register_size (current_gdbarch, regno) <= sizeof (LONGEST)) + if (size <= sizeof (LONGEST)) { + ULONGEST val = extract_unsigned_integer (buf, size); fprintf_unfiltered (gdb_stdlog, " 0x%s %s", - paddr_nz (read_register (regno)), - paddr_d (read_register (regno))); + paddr_nz (val), paddr_d (val)); } } fprintf_unfiltered (gdb_stdlog, "\n"); -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE Ulrich.Weigand@de.ibm.com