From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32541 invoked by alias); 1 Jan 2007 11:33:20 -0000 Received: (qmail 32532 invoked by uid 22791); 1 Jan 2007 11:33:19 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO brahms.sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 01 Jan 2007 11:33:13 +0000 Received: from brahms.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by brahms.sibelius.xs4all.nl (8.13.8/8.13.8) with ESMTP id l01BX9dT000893 for ; Mon, 1 Jan 2007 12:33:09 +0100 (CET) Received: (from kettenis@localhost) by brahms.sibelius.xs4all.nl (8.13.8/8.13.8/Submit) id l01BX8vG029783; Mon, 1 Jan 2007 12:33:09 +0100 (CET) Date: Mon, 01 Jan 2007 11:33:00 -0000 Message-Id: <200701011133.l01BX8vG029783@brahms.sibelius.xs4all.nl> From: Mark Kettenis To: gdb-patches@sourceware.org Subject: Get rid of arm_linux_extract_return_value 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-01/txt/msg00019.txt.bz2 Can someone with access to a Linux ARM platform please test this? I'm considering to just commit this in two weeks if nobody does. I mean, come on, there are at least a couple of commercial entities that rely on this code, and nobody has body to clean it up anywhere in the last four years. Index: ChangeLog from Mark Kettenis * arm-linux-tdep.c (arm_linux_extract_return_value): Remove. (arm_linux_init_abi): Don't set deprecated_extract_return_value. Index: arm-linux-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/arm-linux-tdep.c,v retrieving revision 1.55 diff -u -p -r1.55 arm-linux-tdep.c --- arm-linux-tdep.c 12 Jul 2006 20:46:32 -0000 1.55 +++ arm-linux-tdep.c 1 Jan 2007 11:25:35 -0000 @@ -1,6 +1,6 @@ /* GNU/Linux on ARM target support. - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of GDB. @@ -74,29 +74,6 @@ static const char arm_linux_thumb_le_bre #define ARM_LINUX_JB_ELEMENT_SIZE INT_REGISTER_SIZE #define ARM_LINUX_JB_PC 21 -/* Extract from an array REGBUF containing the (raw) register state - a function return value of type TYPE, and copy that, in virtual format, - into VALBUF. */ -/* FIXME rearnsha/2002-02-23: This function shouldn't be necessary. - The ARM generic one should be able to handle the model used by - linux and the low-level formatting of the registers should be - hidden behind the regcache abstraction. */ -static void -arm_linux_extract_return_value (struct type *type, - gdb_byte regbuf[], - gdb_byte *valbuf) -{ - /* ScottB: This needs to be looked at to handle the different - floating point emulators on ARM GNU/Linux. Right now the code - assumes that fetch inferior registers does the right thing for - GDB. I suspect this won't handle NWFPE registers correctly, nor - will the default ARM version (arm_extract_return_value()). */ - - int regnum = ((TYPE_CODE_FLT == TYPE_CODE (type)) - ? ARM_F0_REGNUM : ARM_A1_REGNUM); - memcpy (valbuf, ®buf[DEPRECATED_REGISTER_BYTE (regnum)], TYPE_LENGTH (type)); -} - /* Dynamic Linking on ARM GNU/Linux -------------------------------- @@ -628,9 +605,6 @@ arm_linux_init_abi (struct gdbarch_info set_solib_svr4_fetch_link_map_offsets (gdbarch, svr4_ilp32_fetch_link_map_offsets); - /* The following override shouldn't be needed. */ - set_gdbarch_deprecated_extract_return_value (gdbarch, arm_linux_extract_return_value); - /* Shared library handling. */ set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); set_gdbarch_skip_solib_resolver (gdbarch, glibc_skip_solib_resolver);