From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30416 invoked by alias); 4 Oct 2008 22:14:10 -0000 Received: (qmail 30405 invoked by uid 22791); 4 Oct 2008 22:14:08 -0000 X-Spam-Check-By: sourceware.org Received: from NaN.false.org (HELO nan.false.org) (208.75.86.248) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sat, 04 Oct 2008 22:13:29 +0000 Received: from nan.false.org (localhost [127.0.0.1]) by nan.false.org (Postfix) with ESMTP id B32F110D22; Sat, 4 Oct 2008 22:13:26 +0000 (GMT) Received: from caradoc.them.org (22.svnf5.xdsl.nauticom.net [209.195.183.55]) by nan.false.org (Postfix) with ESMTP id 8335810CF4; Sat, 4 Oct 2008 22:13:26 +0000 (GMT) Received: from drow by caradoc.them.org with local (Exim 4.69) (envelope-from ) id 1KmFNN-0001rm-MV; Sat, 04 Oct 2008 18:13:25 -0400 Date: Sat, 04 Oct 2008 22:14:00 -0000 From: Daniel Jacobowitz To: Mark Kettenis Cc: hjl.tools@gmail.com, gdb-patches@sourceware.org Subject: Re: PATCH: Extend gdb remote protocol for AVX Message-ID: <20081004221325.GA6856@caradoc.them.org> Mail-Followup-To: Mark Kettenis , hjl.tools@gmail.com, gdb-patches@sourceware.org References: <20080918172728.GA12703@lucon.org> <200810021026.m92AQMqC006955@brahms.sibelius.xs4all.nl> <6dc9ffc80810020715o21079a0fn972cd30a94695f6c@mail.gmail.com> <200810042049.m94Kn3k8015088@brahms.sibelius.xs4all.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200810042049.m94Kn3k8015088@brahms.sibelius.xs4all.nl> User-Agent: Mutt/1.5.17 (2008-05-11) X-IsSubscribed: yes 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: 2008-10/txt/msg00116.txt.bz2 On Sat, Oct 04, 2008 at 10:49:03PM +0200, Mark Kettenis wrote: > If there would be a desire on amd64 to be able to refer to the 32-bit > parts of the general-purpose registers we would implement them in much > the same way as I propose for %xmm/%ymm, as pseudo registers. FWIW I think we should do this. It confuses me sometimes that instructions get disassembled refering to %eax, but print $eax does not work. It just hasn't confused me enough to fix it yet. > I have no objection to the changes you proposed for the remote > protocol. But your diff also touches the core register stuff, and > that needs a bit more thought to make sure we don't surprise our > users. At that point, it may be easier to use the same model for the > remote protocol, where you transfer the top 128 bits of the %ymm > registers in addition to the %xmm registers. Adter all this is how > the hardware does it too (xsave is just an extension of fxsave). One way would be to transfer the xmm registers and then the remaining bits as unnamed registers; another, probably easier way would be to use an architecture specification or an actual register description to transfer just the ymm registers and let GDB know about that fact, so it can synthesize the xmm registers. (I don't remember the original patch, that may be what you're talking about already.) -- Daniel Jacobowitz CodeSourcery