This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA Precord] Disable process record in amd64


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  <teawater@gmail.com>
> 	
> 	* 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]