From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23097 invoked by alias); 26 Mar 2002 18:27:11 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 23020 invoked from network); 26 Mar 2002 18:27:05 -0000 Received: from unknown (HELO kerberos.suse.cz) (195.47.106.10) by sources.redhat.com with SMTP; 26 Mar 2002 18:27:05 -0000 Received: from chimera.suse.cz (chimera.suse.cz [10.20.0.2]) by kerberos.suse.cz (SuSE SMTP server) with ESMTP id 90E2F59D35B; Tue, 26 Mar 2002 19:27:04 +0100 (CET) Received: from suse.cz (leviathan.suse.cz [10.20.1.56]) by chimera.suse.cz (8.11.0/8.11.0/SuSE Linux 8.11.0-0.4) with ESMTP id g2QIR4p01926; Tue, 26 Mar 2002 19:27:04 +0100 X-Authentication-Warning: chimera.suse.cz: Host leviathan.suse.cz [10.20.1.56] claimed to be suse.cz Message-ID: <3CA0BD78.4070608@suse.cz> Date: Tue, 26 Mar 2002 10:27:00 -0000 From: Michal Ludvig Organization: SuSE CR User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9) Gecko/20020310 X-Accept-Language: cs, cz, en MIME-Version: 1.0 To: Daniel Jacobowitz Cc: gdb-patches@sources.redhat.com Subject: Re: [RFA] x86-64 segment registers handling References: <3CA0AF53.8030609@suse.cz> <20020326131355.A25917@nevyn.them.org> Content-Type: multipart/mixed; boundary="------------060001020404000507000501" X-SW-Source: 2002-03/txt/msg00501.txt.bz2 This is a multi-part message in MIME format. --------------060001020404000507000501 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 461 Daniel Jacobowitz wrote: > Can you update gdbserver/linux-x86-64-low.c with these changes, please? > > Also, it appears that you changed the layout of GDB's register cache > for x86-64. At this time that means you also changed the remote > protocol. regformats/reg-x86-64.dat also needs to be updated. Patch appended. Are these changes enough? Can I commit? Michal Ludvig -- * SuSE CR, s.r.o * mludvig@suse.cz * +420 2 9654 5373 * http://www.suse.cz --------------060001020404000507000501 Content-Type: text/plain; name="x8664-06.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="x8664-06.diff" Content-length: 1932 Index: gdbserver/linux-x86-64-low.c =================================================================== RCS file: /cvs/src/src/gdb/gdbserver/linux-x86-64-low.c,v retrieving revision 1.2 diff -c -3 -p -r1.2 linux-x86-64-low.c *** linux-x86-64-low.c 2002/03/04 16:28:35 1.2 --- linux-x86-64-low.c 2002/03/26 18:25:09 *************** *** 28,39 **** #include #include ! static int regmap[] = { RAX, RDX, RCX, RBX, RSI, RDI, RBP, RSP, R8, R9, R10, R11, R12, R13, R14, R15, ! RIP, EFLAGS }; static void --- 28,42 ---- #include #include ! #define X86_64_NUM_GREGS 22 ! ! static int regmap[X86_64_NUM_GREGS] = { RAX, RDX, RCX, RBX, RSI, RDI, RBP, RSP, R8, R9, R10, R11, R12, R13, R14, R15, ! RIP, EFLAGS, ! DS, ES, FS, GS }; static void *************** x86_64_fill_gregset (void *buf) *** 41,47 **** { int i; ! for (i = 0; i < 18; i++) collect_register (i, ((char *) buf) + regmap[i]); } --- 44,50 ---- { int i; ! for (i = 0; i < X86_64_NUM_GREGS; i++) collect_register (i, ((char *) buf) + regmap[i]); } *************** x86_64_store_gregset (void *buf) *** 50,56 **** { int i; ! for (i = 0; i < 18; i++) supply_register (i, ((char *) buf) + regmap[i]); } --- 53,59 ---- { int i; ! for (i = 0; i < X86_64_NUM_GREGS; i++) supply_register (i, ((char *) buf) + regmap[i]); } Index: regformats/reg-x86-64.dat =================================================================== RCS file: /cvs/src/src/gdb/regformats/reg-x86-64.dat,v retrieving revision 1.1 diff -c -3 -p -r1.1 reg-x86-64.dat *** reg-x86-64.dat 2002/02/27 07:07:49 1.1 --- reg-x86-64.dat 2002/03/26 18:25:09 *************** expedite:rbp,rsp,rip *** 18,23 **** --- 18,27 ---- 64:r15 64:rip 32:eflags + 32:ds + 32:es + 32:fs + 32:gs 80:st0 80:st1 80:st2 --------------060001020404000507000501--