From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4229 invoked by alias); 3 Mar 2010 17:33:31 -0000 Received: (qmail 4200 invoked by uid 22791); 3 Mar 2010 17:33:29 -0000 X-SWARE-Spam-Status: No, hits=-1.6 required=5.0 tests=AWL,BAYES_00,SPF_SOFTFAIL X-Spam-Check-By: sourceware.org Received: from mtaout20.012.net.il (HELO mtaout20.012.net.il) (80.179.55.166) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 03 Mar 2010 17:33:24 +0000 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0KYP00L00VECVP00@a-mtaout20.012.net.il> for gdb-patches@sourceware.org; Wed, 03 Mar 2010 19:33:09 +0200 (IST) Received: from HOME-C4E4A596F7 ([84.228.54.31]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0KYP00CFLVF6JQS0@a-mtaout20.012.net.il>; Wed, 03 Mar 2010 19:33:08 +0200 (IST) Date: Wed, 03 Mar 2010 17:33:00 -0000 From: Eli Zaretskii Subject: Re: PATCH: Support x86 pseudo registers In-reply-to: <6dc9ffc81003021407l27b513cbm288d1fd1e43d0c46@mail.gmail.com> To: "H.J. Lu" Cc: msnyder@vmware.com, gdb-patches@sourceware.org Reply-to: Eli Zaretskii Message-id: <83sk8h2tum.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 8BIT References: <20100301170152.GA20106@intel.com> <20100302150446.GB20342@caradoc.them.org> <838waa4nj1.fsf@gnu.org> <6dc9ffc81003021101yf91df69nddd08a824f777641@mail.gmail.com> <83y6ia30nc.fsf@gnu.org> <6dc9ffc81003021306s7cf79ef5n1069d8dcc994a3c6@mail.gmail.com> <83vdde2y6g.fsf@gnu.org> <20100302215235.GA3894@caradoc.them.org> <4B8D89CD.5050700@vmware.com> <6dc9ffc81003021359h15250892q139c4cac09d5cb88@mail.gmail.com> <6dc9ffc81003021407l27b513cbm288d1fd1e43d0c46@mail.gmail.com> 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: 2010-03/txt/msg00106.txt.bz2 > Date: Tue, 2 Mar 2010 14:07:41 -0800 > From: "H.J. Lu" > Cc: Eli Zaretskii , gdb-patches@sourceware.org > > >>> I presume it lets us say $ah or $ax in addition to $eax, and lets $eax > >>> work on 64-bit systems where we really have $rax. > >> > >> Mmm hmm, and the context would be expressions or anywhere where a > >> register name is appropriate (eg. info reg).  Yes? > >> > > > > Yes. > > > > (top-gdb) info reg $edi > > edi            0x1      1 > > (top-gdb) info reg $rdi > > rdi            0x1      1 > > (top-gdb) info reg $dl > > dl             0xd8     -40 > > (top-gdb) info reg $dil > > dil            0x1      1 > > (top-gdb) > > > > > > Basically, you can access any byte/word/dword registers, as shown > in assembly code, the same way as word/dword registers. Then how about this entry: * X86 general purpose registers GDB now supports reading/writing byte, word and double-word x86 general purpose registers directly. This means you can use, say, $ah or $ax to refer, respectively, to the byte register AH and 16-bit word register AX that are actually portions of the 32-bit register EAX or 64-bit register RAX.