From: H.J. Lu Date: Mon, 15 Oct 2012 20:37:39 +0000 (+0000) Subject: Remove sp_regnum_from_eax and pc_regnum_from_eax X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eab09350a37d669c13aaccf621c9e22b7776a3be;p=binutils-gdb.git Remove sp_regnum_from_eax and pc_regnum_from_eax PR backtrace/14646 PR gdb/14647 * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and pc_regnum_from_eax. * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax nor pc_regnum_from_eax. * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax nor pc_regnum_from_eax. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 170c2e72212..a2c457ef949 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +2012-10-15 H.J. Lu + + PR backtrace/14646 + PR gdb/14647 + * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and + pc_regnum_from_eax. + * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax + nor pc_regnum_from_eax. + * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax + nor pc_regnum_from_eax. + 2012-10-15 Jan Kratochvil Fix entry values resolving in inlined frames. diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c index 8c5b6cc5079..9cee464bc69 100644 --- a/gdb/amd64-tdep.c +++ b/gdb/amd64-tdep.c @@ -2943,9 +2943,6 @@ amd64_x32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) tdesc = tdesc_x32; tdep->tdesc = tdesc; - tdep->sp_regnum_from_eax = AMD64_RSP_REGNUM; - tdep->pc_regnum_from_eax = AMD64_RIP_REGNUM; - tdep->num_dword_regs = 17; set_tdesc_pseudo_register_type (gdbarch, amd64_x32_pseudo_register_type); diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index 84e9794ebbc..ddb20aa444b 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -7705,9 +7705,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) tdep->num_mmx_regs = 8; tdep->num_ymm_regs = 0; - tdep->sp_regnum_from_eax = -1; - tdep->pc_regnum_from_eax = -1; - tdesc_data = tdesc_data_alloc (); set_gdbarch_relocate_instruction (gdbarch, i386_relocate_instruction); @@ -7752,14 +7749,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* Support dword pseudo-register if it hasn't been disabled. */ tdep->eax_regnum = ymm0_regnum; ymm0_regnum += tdep->num_dword_regs; - if (tdep->sp_regnum_from_eax != -1) - set_gdbarch_sp_regnum (gdbarch, - (tdep->eax_regnum - + tdep->sp_regnum_from_eax)); - if (tdep->pc_regnum_from_eax != -1) - set_gdbarch_pc_regnum (gdbarch, - (tdep->eax_regnum - + tdep->pc_regnum_from_eax)); } else tdep->eax_regnum = -1; diff --git a/gdb/i386-tdep.h b/gdb/i386-tdep.h index 76afdceb315..5f233f590fe 100644 --- a/gdb/i386-tdep.h +++ b/gdb/i386-tdep.h @@ -149,14 +149,6 @@ struct gdbarch_tdep of pseudo dword register support. */ int eax_regnum; - /* Register number for SP, relative to %eax. Set this to -1 to - indicate the absence of pseudo SP register support. */ - int sp_regnum_from_eax; - - /* Register number for PC, relative to %eax. Set this to -1 to - indicate the absence of pseudo PC register support. */ - int pc_regnum_from_eax; - /* Number of core registers. */ int num_core_regs;