From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19416 invoked by alias); 14 Dec 2001 19:17:43 -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 18330 invoked from network); 14 Dec 2001 19:16:20 -0000 Received: from unknown (HELO dr-evil.shagadelic.org) (208.176.2.162) by sources.redhat.com with SMTP; 14 Dec 2001 19:16:20 -0000 Received: by dr-evil.shagadelic.org (Postfix, from userid 7518) id 78E15986A; Fri, 14 Dec 2001 11:16:20 -0800 (PST) Date: Fri, 14 Dec 2001 11:17:00 -0000 From: Jason R Thorpe To: Kumar Gala Cc: linuxppc-dev@lists.linuxppc.org, Daniel Jacobowitz , Kevin Buettner , gdb@sources.redhat.com, ezannoni@cygnus.com, fsirl@kernel.crashing.org, paulus@samba.org Subject: Re: AltiVec register ptrace support Message-ID: <20011214111620.U9607@dr-evil.shagadelic.org> Reply-To: thorpej@wasabisystems.com Mail-Followup-To: Jason R Thorpe , Kumar Gala , linuxppc-dev@lists.linuxppc.org, Daniel Jacobowitz , Kevin Buettner , gdb@sources.redhat.com, ezannoni@cygnus.com, fsirl@kernel.crashing.org, paulus@samba.org References: <20011207173434.A28783@nevyn.them.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from kumar.gala@motorola.com on Fri, Dec 14, 2001 at 12:52:33PM -0600 Organization: Wasabi Systems, Inc. X-SW-Source: 2001-12/txt/msg00134.txt.bz2 On Fri, Dec 14, 2001 at 12:52:33PM -0600, Kumar Gala wrote: > Is there any reason that we can not spport both methods. There are > applications in which having the ability to get all the registers is a > single syscall is a major performance improvement. I'll chime in... Other systems that support ptrace(2) don't have PEEK/POKE/READ_U/WRITE_U methods. I'm currently working on AltiVec for NetBSD/powerpc, and ptrace(2) interface for AltiVec is going to look like: PT_GETALTIVECREGS PT_SETALTIVECREGS ...both of which using the following structure as an argument: struct vreg { uint32_t vreg[32][4]; /* vector register contents */ register_t vscr; /* vector status and control reg */ register_t vrsave; /* SPR 238 */ }; This is consistent with how e.g. SSE/SSE2 registers are handled on NetBSD/i386 (PT_GETXMMREGS/PT_SETXMMREGS). -- -- Jason R. Thorpe