From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30352 invoked by alias); 13 May 2009 10:18:03 -0000 Received: (qmail 30341 invoked by uid 22791); 13 May 2009 10:18:01 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 13 May 2009 10:17:57 +0000 Received: (qmail 1942 invoked from network); 13 May 2009 10:17:53 -0000 Received: from unknown (HELO orlando) (pedro@127.0.0.2) by mail.codesourcery.com with ESMTPA; 13 May 2009 10:17:53 -0000 From: Pedro Alves To: gdb-patches@sourceware.org Subject: Re: [RFA Precord] Disable process record in amd64 Date: Wed, 13 May 2009 10:18:00 -0000 User-Agent: KMail/1.9.10 Cc: Hui Zhu References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200905131118.02697.pedro@codesourcery.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: 2009-05/txt/msg00267.txt.bz2 On Wednesday 13 May 2009 09:07:03, Hui Zhu wrote: > Hi, > > The i386 process record can't work together with amd64 now. So I make > a patch to disable it in amd64. It would be better to move the `set_gdbarch_process_record (gdbarch, i386_process_record)' call to tdep files where precord will actually work --- in this case, i386-linux-tdep.c --- instead of having i386-tdep.c assume precord support. We've done the exact same thing for displaced stepping. > > 2009-05-13 Hui Zhu > > * amd64-tdep.c (amd64_init_abi): Disable process record > function that set in i386_gdbarch_init. > * i386-tdep.c (i386_gdbarch_init): Call > set_gdbarch_process_record before gdbarch_init_osabi to make > process record can be disable in gdbarch_init_osabi. > > Thanks, > Hui > > --- > amd64-tdep.c | 3 +++ > i386-tdep.c | 4 ++-- > 2 files changed, 5 insertions(+), 2 deletions(-) > > --- a/amd64-tdep.c > +++ b/amd64-tdep.c > @@ -2049,6 +2049,9 @@ amd64_init_abi (struct gdbarch_info info > amd64_regset_from_core_section); > > set_gdbarch_get_longjmp_target (gdbarch, amd64_get_longjmp_target); > + > + /* Disable process record function that set in i386_gdbarch_init. */ > + set_gdbarch_process_record (gdbarch, 0); > } > > > --- a/i386-tdep.c > +++ b/i386-tdep.c > @@ -5256,6 +5256,8 @@ i386_gdbarch_init (struct gdbarch_info i > > frame_base_set_default (gdbarch, &i386_frame_base); > > + set_gdbarch_process_record (gdbarch, i386_process_record); > + > /* Hook in ABI-specific overrides, if they have been registered. */ > gdbarch_init_osabi (info, gdbarch); > > @@ -5277,8 +5279,6 @@ i386_gdbarch_init (struct gdbarch_info i > set_gdbarch_skip_permanent_breakpoint (gdbarch, > i386_skip_permanent_breakpoint); > > - set_gdbarch_process_record (gdbarch, i386_process_record); > - > return gdbarch; > } > -- Pedro Alves