From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22527 invoked by alias); 4 Jul 2002 06:04:51 -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 22500 invoked from network); 4 Jul 2002 06:04:48 -0000 Received: from unknown (HELO kerberos.suse.cz) (195.47.106.10) by sources.redhat.com with SMTP; 4 Jul 2002 06:04:48 -0000 Received: from chimera.suse.cz (chimera.suse.cz [10.20.0.2]) by kerberos.suse.cz (SuSE SMTP server) with ESMTP id 5A0F759D348; Thu, 4 Jul 2002 08:04:47 +0200 (CEST) Received: from suse.cz (naga.suse.cz [10.20.1.16]) by chimera.suse.cz (8.11.0/8.11.0/SuSE Linux 8.11.0-0.4) with ESMTP id g6464lg28159; Thu, 4 Jul 2002 08:04:47 +0200 X-Authentication-Warning: chimera.suse.cz: Host naga.suse.cz [10.20.1.16] claimed to be suse.cz Message-ID: <3D23E57E.8030007@suse.cz> Date: Thu, 04 Jul 2002 00:22:00 -0000 From: Michal Ludvig Organization: SuSE CR User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020529 X-Accept-Language: cs, cz, en MIME-Version: 1.0 To: Daniel Jacobowitz Cc: GDB Patches Subject: Re: [patch] gdbserver for x86-64 References: <3D230CFA.5060602@suse.cz> <20020703150155.GA9114@nevyn.them.org> Content-Type: multipart/mixed; boundary="------------040102070200070602020206" X-SW-Source: 2002-07/txt/msg00073.txt.bz2 This is a multi-part message in MIME format. --------------040102070200070602020206 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 813 Daniel Jacobowitz wrote: > On Wed, Jul 03, 2002 at 04:40:58PM +0200, Michal Ludvig wrote: >>2002-07-03 Michal Ludvig >> >> * gdbserver/linux-x86-64-low.c (x86_64_fill_gregset): Change type in >> explicit cast to CORE_ADDR so that pointer arithmetic works. >> (x86_64_store_gregset): Ditto + parameter made const. >> (x86_64_store_fpregset): Parameter made const. > > > Could you change the reg_map instead, please? It's used outside of > this file and expected to be in byte offsets. Where is it used? It seems to be a static array without any reference from outside. > Just add *4 or *8 where appropriate as I did in the i386 file. OK, changed and committed as in the attached file. Michal Ludvig -- * SuSE CR, s.r.o * mludvig@suse.cz * +420 2 9654 5373 * http://www.suse.cz --------------040102070200070602020206 Content-Type: text/plain; name="gdbserver-2.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="gdbserver-2.diff" Content-length: 1312 2002-07-04 Michal Ludvig * gdbserver/linux-x86-64-low.c (x86_64_regmap): Make it an array of byte offsets instead of an array of indexes. (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const. Index: gdbserver/linux-x86-64-low.c =================================================================== RCS file: /cvs/src/src/gdb/gdbserver/linux-x86-64-low.c,v retrieving revision 1.5 diff -c -3 -p -u -r1.5 linux-x86-64-low.c --- gdbserver/linux-x86-64-low.c 11 Jun 2002 17:32:39 -0000 1.5 +++ gdbserver/linux-x86-64-low.c 4 Jul 2002 05:53:37 -0000 @@ -31,12 +31,12 @@ #define X86_64_NUM_GREGS 22 static int x86_64_regmap[X86_64_NUM_GREGS] = { - RAX, RBX, RCX, RDX, - RSI, RDI, RBP, RSP, - R8, R9, R10, R11, - R12, R13, R14, R15, - RIP, EFLAGS, - DS, ES, FS, GS + RAX * 8, RBX * 8, RCX * 8, RDX * 8, + RSI * 8, RDI * 8, RBP * 8, RSP * 8, + R8 * 8, R9 * 8, R10 * 8, R11 * 8, + R12 * 8, R13 * 8, R14 * 8, R15 * 8, + RIP * 8, EFLAGS * 8, + DS * 8, ES * 8, FS * 8, GS * 8 }; static void @@ -49,7 +49,7 @@ } static void -x86_64_store_gregset (void *buf) +x86_64_store_gregset (const void *buf) { int i; @@ -64,7 +64,7 @@ } static void -x86_64_store_fpregset (void *buf) +x86_64_store_fpregset (const void *buf) { i387_fxsave_to_cache (buf); } --------------040102070200070602020206--