X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=gdb%2FChangeLog;h=8b086d751064d91d97cf37d2fd3ccf8c77d71a1b;hb=594f77850bb22a2cec4e8fc44c7ea735a6270eb2;hp=a9e32cf614853a025a763881a742b4662e76ffdd;hpb=8ed86d01ca8b14c14f37429df136130158066f8a;p=thirdparty%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a9e32cf6148..8b086d75106 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,392 @@ +2007-06-16 Ulrich Weigand + + * regcache.c (struct regcache): Add ptid_t member. + (regcache_xmalloc): Initialize it. + (regcache_cpy_no_passthrough): Do not refer to current_regcache. + (regcache_dup): Likewise. + (regcache_dup_no_passthrough): Likewise. + (current_regcache): Make static. + (registers_ptid): Remove variable. + (get_thread_regcache): New function. + (get_current_regcache): New function. + (registers_changed): Implement by freeing current regcache. + (regcache_raw_read): Do not refer to current_regcache. Set + inferior_ptid to regcache->ptid while calling target routines. + (regcache_raw_write): Likewise. + (regcache_raw_supply): Do not refer to current_regcache. + (read_pc_pid): Use thread regcache. Do not modify inferior_ptid. + (write_pc_pid): Likewise. + (build_regcache): Remove. + (_initialize_regcache): Do not call DEPRECATED_REGISTER_GDBARCH_SWAP + or deprecated_register_gdbarch_swap. Do not initialize + registers_ptid. + * regcache.h (get_current_regcache): Add prototype. + (get_thread_regcache): Likewise. + (current_regcache): Remove declaration. + + * corelow.c (core_open): Replace current_regcache by + get_current_regcache (). + * frame.c (frame_pop): Likewise. + (put_frame_register): Likewise. + (get_current_frame, create_new_frame): Likewise. + * mi/mi-main.c (mi_cmd_data_write_register_values): Likewise. + * stack.c (return_command): Likewise. + * infcall.c (call_function_by_hand): Likewise. + * infrun.c (resume): Likewise. + (save_inferior_status, restore_inferior_status): Likewise. + * linux-fork.c (fork_load_infrun_state): Likewise. + (fork_save_infrun_state): Likewise. + * win32-nat.c (win32_resume): Likewise. + * i386fbsd-nat.c (i386fbsd_resume): Likewise. + * monitor.c (monitor_wait): Likewise. + * remote.c (remote_wait): Likewise. + * remote-mips.c (mips_wait): Likewise. + + * bsd-kvm.c (bsd_kvm_open): Likewise + (bsd_kvm_proc_cmd, bsd_kvm_pcb_cmd): Likewise. + * fbsd-nat.c (fbsd_make_corefile_notes): Likewise. + * i386-linux-nat.c (i386_linux_resume): Likewise. + * ia64-linux-nat.c (ia64_linux_insert_watchpoint): Likewise. + (ia64_linux_stopped_data_address): Likewise. + + * frv-tdep.c (frv_fdpic_loadmap_addresses): Likewise. + * m32c-tdep.c (m32c_virtual_frame_pointer): Likewise. + * mep-tdep.c (current_me_module, current_options): Likewise. + * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Likewise. + + * linux-nat.c (linux_nat_do_thread_registers): Use thread + regcache instead of current_regcache. Call target_fetch_registers. + (linux_nat_corefile_thread_callback): Update call site. + (linux_nat_do_registers): Likewise. + * procfs.c (procfs_do_thread_registers): Use thread regcache instead + of current_regcache. + (procfs_make_note_section): Likewise. + * proc-service.c (ps_lgetregs, ps_lsetregs): Likewise. + (ps_lgetfpregs, ps_lsetfpregs): Likewise. + * sol-thread.c (ps_lgetregs, ps_lsetregs): Likewise. + (ps_lgetfpregs, ps_lsetfpregs): Likewise. + +2007-06-15 Ulrich Weigand + + * regcache.c (read_register, read_register_pid): Remove. + (write_register, write_register_pid): Likewise. + * regcache.h (read_register, read_register_pid): Remove prototype. + (write_register, write_register_pid): Likewise. + +2007-06-15 Ulrich Weigand + + * gdbarch.sh (read_pc): Add REGCACHE argument. Remove PTID argument. + (write_pc): Likewise. Remove default implementation, add predicate. + * gdbarch.c, gdbarch.h: Regenerate. + * regcache.c (read_pc_pid): Use current regcache instead of calling + read_register_pid. + (write_pc_pid): Check gdbarch_write_pc predicate, implement default + case inline. + (generic_target_write_pc): Remove. + * inferior.h (generic_target_write_pc): Remove. + * frv-tdep.c (frv_gdbarch_init): Do not install it. + * m68hc11-tdep.c (m68hc11_gdbarch_init): Likewise. + * rs6000-tdep.c (rs6000_gdbarch_init): Likewise. + * sh64-tdep.c (sh64_gdbarch_init): Likewise. + * sh-tdep.c (sh_gdbarch_init): Likewise. + * xstormy16-tdep.c (xstormy16_gdbarch_init): Likewise. + + * avr-tdep.c (avr_read_pc): Add REGCACHE argument. Remove PTID + argument. Use REGCACHE instead of calling read_register_pid. + * hppa-hpux-tdep.c (hppa_hpux_read_pc): Likewise. + * hppa-tdep.c (hppa_read_pc): Likewise. + * hppa-tdep.h (hppa_read_pc): Likewise. + * ia64-tdep.c (ia64_read_pc): Likewise. + * m32r-tdep.c (m32r_read_pc): Likewise. + * mep-tdep.c (mep_read_pc): Likewise. + * mn10300-tdep.c (mn10300_read_pc): Likewise. + * spu-tdep.c (spu_read_pc): Likewise. + + * arm-tdep.c (arm_write_pc): Add REGCACHE argument. Remove PTID + argument. Use REGCACHE instead of calling write_register_pid. + * avr-tdep.c (avr_write_pc): Likewise. + * hppa-hpux-tdep.c (hppa_hpux_write_pc): Likewise. + * hppa-tdep.c (hppa_write_pc): Likewise. + * hppa-tdep.h (hppa_write_pc): Likewise. + * i386-linux-tdep.c (i386_linux_write_pc): Likewise. + * amd64-linux-tdep.c (amd64_linux_write_pc): Likewise. + * ia64-linux-tdep.c (ia64_linux_write_pc): Likewise. + * ia64-tdep.c (ia64_write_pc): Likewise. + * ia64-tdep.h (ia64_write_pc): Likewise. + * m32r-tdep.c (m32r_write_pc): Likewise. + * m88k-tdep.c (m88k_write_pc): Likewise. + * mep-tdep.c (mep_write_pc): Likewise. + * mips-tdep.c (mips_write_pc): Likewise. + * mips-linux-tdep.c (mips_linux_write_pc): Likewise. + * mn10300-tdep.c (mn10300_write_pc): Likewise. + * sparc-tdep.c (sparc_write_pc): Likewise. + * spu-tdep.c (spu_write_pc): Likewise. + + * mips-tdep.c (read_signed_register): Remove. + (read_signed_register_pid): Likewise. + (mips_read_pc): Add REGCACHE argument. Remove PTID argument. + Use REGCACHE instead of calling read_signed_register_pid. + +2007-06-15 Ulrich Weigand + + * gdbarch.sh (push_dummy_code): Add REGCACHE argument. + * gdbarch.c, gdbarch.h: Regenerate. + * infcall.c (generic_push_dummy_code): Add REGCACHE argument. + (push_dummy_code): Likewise. Pass it to callee. + (call_function_by_hand): Pass current regcache to push_dummy_code. + + * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Add REGCACHE + argument. Use it instead of current_regcache. + + * cris-tdep.c (cris_push_dummy_code): Add REGCACHE argument. + * sparc-tdep.c (sparc32_push_dummy_code): Likewise. + +2007-06-15 Ulrich Weigand + + * gdbarch.sh (get_longjmp_target): Add FRAME argument. + * gdbarch.c, gdbarch.h: Regenerate. + * infrun.c (handle_inferior_event): Pass current frame to + gdbarch_get_longjmp_target. + + * alpha-tdep.c (alpha_get_longjmp_target): Add FRAME argument. + Read registers from FRAME instead of using read_register. + Use get_frame_arch instead of current_gdbarch. + * arm-tdep.c (arm_get_longjmp_target): Likewise. + * i386-tdep.c (i386_get_longjmp_target): Likewise. + * m68k-tdep.c (m68k_get_longjmp_target): Likewise. + * mips-linux-tdep.c (mips_linux_get_longjmp_target): Likewise. + (mips64_linux_get_longjmp_target): Likewise. + * mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Likewise. + +2007-06-15 Ulrich Weigand + + * gdbarch.sh (skip_trampoline_code): Add FRAME argument. + * gdbarch.c, gdbarch.h: Regenerate. + * arch-utils.c (generic_skip_trampoline_code): Add FRAME argument. + * arch-utils.h (generic_skip_trampoline_code): Likewise. + * infrun.c (handle_inferior_event): Pass current frame to + gdbarch_skip_trampoline_code and skip_language_trampoline. + + * language.c (unk_lang_trampoline): Add FRAME argument. + (skip_language_trampoline): Add FRAME argument. Pass it to + skip_trampoline callback. + * language.h: Add forward declaration of struct frame_info. + (struct language_defn): Add FRAME argument to skip_trampoline. + (skip_language_trampoline): Add FRAME argument. + * cp-abi.c (cplus_skip_trampoline): Add FRAME argument. Pass it + to skip_trampoline callback. + * cp-abi.h: Add forward declaration of struct frame_info. + (cplus_skip_trampoline): Add FRAME argument. + (struct cp_abi_ops): Add FRAME argument to skip_trampoline callback. + * gnu-v3-abi.c (gnuv3_skip_trampoline): Add FRAME argument. Pass it + to gdbarch_skip_trampoline_code. + * objc-lang.c (objc_skip_trampoline): Add FRAME argument. Pass it + to gdbarch_skip_trampoline_code. + + * minsyms.c (find_solib_trampoline_target): Add FRAME argument. + * symtab.h (find_solib_trampoline_target): Likewise. + * obsd-tdep.c (obsd_skip_solib_resolver): Pass current frame to + find_solib_trampoline_target. + + * arm-tdep.c (arm_skip_stub): Add FRAME argument. Read registers + from FRAME instead of calling read_register. + + * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Add FRAME + argument. Read registers from FRAME instead of using read_register. + * hppa-tdep.c (hppa_skip_trampoline_code): Likewise. + * hppa-tdep.h (hppa_skip_trampoline_code): Add FRAME argument. + + * i386-cygwin-tdep.c (i386_cygwin_skip_trampoline_code): Add FRAME + argument. + + * m32c-tdep.c (m32c_skip_trampoline_code): Add FRAME argument. + + * mips-tdep.c (mips_skip_trampoline_code): Add FRAME argument. Read + registers from FRAME instead of using read_signed_register. + + * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Add FRAME + argument. + (ppc64_standard_linkage_target): Likewise. Read registers from FRAME + instead of using read_register. + (ppc64_skip_trampoline_code): Add FRAME argument. Pass it to + ppc64_standard_linkage_target. + * rs6000-tdep.c (rs6000_skip_trampoline_code): Add FRAME argument. + Pass it to find_solib_trampoline_target. Read registers from FRAME + instead of using read_register. + + * xstormy16-tdep.c (xstormy16_skip_trampoline_code): Add FRAME + argument. + +2007-06-15 Ulrich Weigand + + * gdbarch.sh (software_single_step): Replace REGCACHE argument by + FRAME argument. + * gdbarch.c, gdbarch.h: Regenerate. + * infrun.c (resume): Pass current frame to SOFTWARE_SINGLE_STEP. + + * alpha-tdep.c (alpha_next_pc): Add FRAME argument. Retrieve + registers from FRAME instead of using read_register. + (alpha_software_single_step): Replace REGCACHE by FRAME. Pass FRAME + to alpha_next_pc. Use get_frame_pc instead of read_pc. + * alpha-tdep.h (alpha_software_single_step): Replace REGCACHE + argument by FRAME. + + * arm-tdep.c (shifted_reg_val): Add FRAME argument. Read registers + from FRAME instead of using read_register. + (thumb_get_next_pc): Likewise. + (arm_get_next_pc): Likewise. + (arm_software_single_step): Replace REGCACHE by FRAME. Pass FRAME + to arm_get_next_pc. Use get_frame_pc instead of read_register. + * arm-tdep.h (arm_software_single_step): Replace REGCACHE + argument by FRAME. + + * cris-tdep.c (find_step_target): Add FRAME argument. Read registers + from FRAME instead of using read_register. + (cris_software_single_step): Replace REGCACHE by FRAME. Pass FRAME + to find_step_target. + + * mips-tdep.c (mips32_next_pc): Add FRAME argument. Read registers + from FRAME instead of using read_register / read_signed_register. + (extended_mips16_next_pc): Likewise. + (mips16_next_pc): Likewise. + (mips_next_pc): Likewise. + (mips_software_single_step): Replace REGCACHE by FRAME. Pass FRAME + to mips_next_pc. Use get_frame_pc instead of read_pc. + * mips-tdep.h (mips_software_single_step): Replace REGCACHE + argument by FRAME. + + * rs6000-tdep.c (branch_dest): Add FRAME argument. Use it instead + of current frame. Read registers from FRAME. + (deal_with_atomic_sequence): Add FRAME argument. Pass it to + branch_dest. Use get_frame_pc instead of read_pc. + (rs6000_software_single_step): Likewise. + (bl_to_blrl_insn_p): Do not call branch_dest. + * rs6000-tdep.h (rs6000_software_single_step): Replace REGCACHE + argument by FRAME. + + * sparc64-linux-tdep.c (sparc64_linux_step_trap): Add FRAME argument. + Read registers from FRAME instead of current regcache. + * sparc-linux-tdep.c (sparc32_linux_step_trap): Likewise. + * sparcnbsd-tdep.c (sparcnbsd_step_trap): Likewise. + * sparc-tdep.c (sparc_address_from_register): Remove. + (sparc_analyze_control_transfer): Pass FRAME argument instead of + GDBARCH. Pass FRAME to step_trap callback. + (sparc_step_trap): Add FRAME argument. + (space_software_single_step): Replace REGCACHE by FRAME. Pass FRAME + to sparc_analyze_control_transfer. Read registers from FRAME instead + of calling sparc_address_from_register. + * sparc-tdep.h (struct gdbarch_tdep): Add FRAME argument to + step_trap callback. + (sparc_address_from_register): Remove prototype. + (sparc_software_single_step): Replace REGCACHE argument by FRAME. + (sparcnbsd_step_trap): Add FRAME argument. + + * spu-tdep.c (spu_software_single_step): Replace REGCACHE argument + by FRAME. Read registers from FRAME instead of REGCACHE. + +2007-06-15 Ulrich Weigand + + * arm-tdep.c (arm_print_float_info): Use register value from FRAME + instead of calling read_register. + + * avr-tdep.c (avr_push_dummy_call): Write to REGCACHE instead of + calling write_register. + + * hppa-tdep.c (hppa32_push_dummy_call): Write to REGCACHE instead of + calling write_register. + + * ia64-tdep.c (find_func_descr): Add REGCACHE parameter. Use it + instead of calling read_register. + (ia64_push_dummy_call): Update call to find_func_descr. Use REGCACHE + instead of calling read_register and write_register. + + * m32r-tdep.c (m32r_linux_supply_gregset): Use REGCACHE parameter + instead of current_regcache. + + * mn10300-tdep.c (mn10300_push_dummy_call): Write to REGCACHE instead + of calling write_register. + * mn10300-linux-tdep.c (am33_supply_fpregset_method): Use REGCACHE + parameter instead of current_regcache. + + * mips-tdep.c (mips2_fp_compat): Add FRAME parameter. Use it + instead of calling read_register. + (mips_read_fp_register_double, mips_print_fp_register): Update calls. + (mips_eabi_push_dummy_call): Use REGCACHE instead of write_register. + (mips_n32n64_push_dummy_call): Likewise. + (mips_o32_push_dummy_call): Likewise. + (mips_o64_push_dummy_call): Likewise. + + * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Use REGCACHE + parameter instead of current_regcache. + + * xtensa-tdep.c (xtensa_register_write_masked): Add REGCACHE parameter. + Use it instead of read_register and write_register. + (xtensa_register_read_masked): Likewise. + (xtensa_pseudo_register_read): Update call. + (xtensa_pseudo_register_write): Likewise. + (xtensa_frame_cache): Use register values unwound from NEXT_FRAME + instead of calling read_register. + (xtensa_push_dummy_call): Update comment. + +2007-06-15 Ulrich Weigand + + * mips-tdep.c (mips16_scan_prologue): Replace read_next_frame_reg + by frame_unwind_register_signed calls. + (mips32_scan_prologue): Likewise. Skip analysis of alloca stack + frame allocations when called with NULL NEXT_FRAME parameter. + (read_next_frame_reg): Remove. + + * sh-tdep.c (sh_analyze_prologue): Add FPSCR parameter. Use it + instead of reading the FPSCR register. + (sh_frame_cache): Pass unwound FPSCR register value to + sh_analyze_prologue. + (sh_skip_prologue): Pass dummy FPSCR value to sh_analyze_prologue. + + * v850-tdep.c (v850_analyze_prologue): Add CTBP parameter. Use it + instead of reading the CTBP register. + (v850_frame_cache): Pass unwound CTBP register value to + v850_analyze_prologue. + +2007-06-15 Ulrich Weigand + + * sh-tdep.h (sh_show_regs): Add FRAME parameter. + * sh-tdep.c (sh_show_regs): Likewise. + (sh_show_regs_command): Pass current frame to sh_show_regs routine. + (sh_generic_show_regs): Add FRAME parameter. Use register + values from that frame instead of calling read_register. + (sh3_show_regs, sh2e_show_regs, sh2a_show_regs, sh2a_nofpu_show_regs, + sh3e_show_regs, sh3_dsp_show_regs, sh4_show_regs, sh4_nofpu_show_regs, + sh_dsp_show_regs): Likewise. + * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs, + sh64_show_regs): Likewise. + +2007-06-15 Ulrich Weigand + + * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Read from + current regcache instead of calling read_register. + +2007-06-15 Ulrich Weigand + + * mep-tdep.c (current_me_module): Read from current regcache + instead of calling read_register. + (current_options): Likewise. + +2007-06-15 Ulrich Weigand + + * cris-tdep.c (cris_stopped_data_address): Read register values + from current frame instead of calling read_register. + * frv-tdep.c (frv_stopped_data_address): Likewise. + +2007-06-15 Ulrich Weigand + + * solib-sunos.c (sunos_solib_create_inferior_hook): Use write_pc + instead of write_register (PC_REGNUM, ...). + +2007-06-15 Ulrich Weigand + + * solib-sunos.c (sunos_solib_create_inferior_hook): Add comment + explaining why the PC adjustment code is necessary. + 2007-06-15 Vladimir Prus * m68k-tdep.h (enum m68k_flavour): New.