From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19772 invoked by alias); 9 Feb 2006 12:30:45 -0000 Received: (qmail 19762 invoked by uid 22791); 9 Feb 2006 12:30:45 -0000 X-Spam-Check-By: sourceware.org Received: from mta07-winn.ispmail.ntl.com (HELO mta07-winn.ispmail.ntl.com) (81.103.221.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 09 Feb 2006 12:30:43 +0000 Received: from aamta12-winn.ispmail.ntl.com ([81.103.221.35]) by mta07-winn.ispmail.ntl.com with ESMTP id <20060209123036.TEIB8780.mta07-winn.ispmail.ntl.com@aamta12-winn.ispmail.ntl.com> for ; Thu, 9 Feb 2006 12:30:36 +0000 Received: from cpc2-oxfd8-0-0-cust771.oxfd.cable.ntl.com ([86.8.143.4]) by aamta12-winn.ispmail.ntl.com with ESMTP id <20060209123035.NDLX12811.aamta12-winn.ispmail.ntl.com@cpc2-oxfd8-0-0-cust771.oxfd.cable.ntl.com> for ; Thu, 9 Feb 2006 12:30:35 +0000 Received: from cpc2-oxfd8-0-0-cust771.oxfd.cable.ntl.com (localhost.localdomain [127.0.0.1]) by cpc2-oxfd8-0-0-cust771.oxfd.cable.ntl.com (8.13.4/8.13.4) with ESMTP id k19CUXsK010592 for ; Thu, 9 Feb 2006 12:30:33 GMT Received: (from david@localhost) by cpc2-oxfd8-0-0-cust771.oxfd.cable.ntl.com (8.13.4/8.13.4/Submit) id k19CUWOk010591 for gdb@sources.redhat.com; Thu, 9 Feb 2006 12:30:32 GMT Date: Thu, 09 Feb 2006 12:30:00 -0000 From: David Lecomber To: gdb@sources.redhat.com Subject: ia64 register cache (not!) Message-ID: <20060209123032.GA10585@streamline-computing.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-02/txt/msg00062.txt.bz2 Dear all, The ia64 (on suse9.3) of gdb seems to not use the PTRACE_GETREGS, but goes fetching each register in turn. This seems a bit crazy, and the source of some very slow behaviour (given the number of ia64 registers!). There seems to be some source that was intended to handle the GETREGS but is probably not being called (ia64-linux-nat.c). When I debug, gdb is definitely calling the fetch_inferior_registers defined inside infptrace.c (btw, this is GDB from June'05, but it seems that the excessive ptrace behaviour is the same in most recent CVS too).. Anyone have an idea why it's this way? I've watched how gdb handles the i386 version -- going off into fetch_inferior_registers in i386-linux-nat.c. d.