From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21571 invoked by alias); 27 Jul 2009 16:17:42 -0000 Received: (qmail 21437 invoked by uid 22791); 27 Jul 2009 16:17:40 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from wf-out-1314.google.com (HELO wf-out-1314.google.com) (209.85.200.173) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 27 Jul 2009 16:17:34 +0000 Received: by wf-out-1314.google.com with SMTP id 23so941200wfg.24 for ; Mon, 27 Jul 2009 09:17:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.143.15.14 with SMTP id s14mr750410wfi.4.1248711452103; Mon, 27 Jul 2009 09:17:32 -0700 (PDT) In-Reply-To: <4A6B6FEC.8020904@vmware.com> References: <4A5A810B.7080603@vmware.com> <4A610EE8.1090904@vmware.com> <4A6B6FEC.8020904@vmware.com> From: Hui Zhu Date: Mon, 27 Jul 2009 16:50:00 -0000 Message-ID: Subject: Re: [RFA/RFC Prec] Add Linux AMD64 process record support second version, (instruction set support) 1/3 To: Michael Snyder Cc: Mark Kettenis , gdb-patches ml Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 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: 2009-07/txt/msg00650.txt.bz2 On Sun, Jul 26, 2009 at 04:49, Michael Snyder wrote: > Hui Zhu wrote: >> >> On Sat, Jul 18, 2009 at 07:53, Michael Snyder wrote: >>>> >>>> Thanks Michael, >>>> >>>> I updated all the AMD64 patches. =A0Please help me review it. >>>> >>>> Thanks, >>>> Hui >>>> >>>> 2009-07-17 =A0Hui Zhu =A0 >>>> >>>> =A0 =A0 =A0 Add AMD64 process record instruction set support. >>>> >>>> =A0 =A0 =A0 * i386-tdep.h (gdbarch_tdep): Add record_regmap for regist= ers >>>> =A0 =A0 =A0 because the AMD64's registers order in GDB is not same with >>>> =A0 =A0 =A0 I386 instructions. >>>> =A0 =A0 =A0 Add i386_syscall_record to be the syscall function handle >>>> =A0 =A0 =A0 interface. >>>> =A0 =A0 =A0 (record_i386_regnum): Number for record_regmap. >>>> =A0 =A0 =A0 * i386-tdep.c (OT_QUAD): For 64 bits. >>>> =A0 =A0 =A0 (i386_record_s): Add rex_x, rex_b, rip_offset and >>>> =A0 =A0 =A0 popl_esp_hack for AMD64 instruction set. And regmap for >>>> =A0 =A0 =A0 record_regmap. >>>> =A0 =A0 =A0 (i386_record_lea_modrm_addr): Support AMD64 instruction set >>>> =A0 =A0 =A0 64 bits lea. >>>> =A0 =A0 =A0 (i386_record_lea_modrm): Ditto. >>>> =A0 =A0 =A0 (i386_record_push): New function. =A0Record the execution = log >>>> =A0 =A0 =A0 of push. >>>> =A0 =A0 =A0 (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the >>>> =A0 =A0 =A0 register. >>>> =A0 =A0 =A0 (i386_process_record): Support AMD64 instruction set. >>>> =A0 =A0 =A0 amd64-tdep.c (amd64_record_regmap): For record_regmap. >>> >>> Should be a "*" at the beginning of the line above. > >> Thanks Michael. >> >> I update the patches according to your mail except changelog. =A0Because >> It sames that we just add * at the begin of the function name. > > No, we add * before a file name. =A0Like this: > > =A0 =A0 =A0 =A0* amd64-tdep.c (amd64_record_regmap): For record_regmap. > =A0 =A0 =A0 =A0(amd64_init_abi): Set amd64_record_regmap to record_regmap. > > Oops, I forgot the last one. Really sorry for it. 2009-07-20 Hui Zhu Add AMD64 process record instruction set support. * i386-tdep.h (gdbarch_tdep): Add record_regmap for registers because the AMD64's registers order in GDB is not same with I386 instructions. Add i386_syscall_record to be the syscall function handle interface. (record_i386_regnum): Number for record_regmap. * i386-tdep.c (OT_QUAD): For 64 bits. (i386_record_s): Add rex_x, rex_b, rip_offset and popl_esp_hack for AMD64 instruction set. And regmap for record_regmap. (i386_record_lea_modrm_addr): Support AMD64 instruction set 64 bits lea. (i386_record_lea_modrm): Ditto. (i386_record_push): New function. Record the execution log of push. (I386_RECORD_ARCH_LIST_ADD_REG): New macro to record the register. (i386_process_record): Support AMD64 instruction set. * amd64-tdep.c (amd64_record_regmap): For record_regmap. (amd64_init_abi): Set amd64_record_regmap to record_regmap. Thanks, Hui