Pass readable_regcache to gdbarch method read_pc
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 567a0dd4af5f9a12ba0c095463349081101d30ad..e58bc386e3ed77aa0822c23675640a9d865eebe3 100644 (file)
@@ -1,3 +1,140 @@
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * avr-tdep.c (avr_read_pc): Change parameter type to
+       readable_regcache.
+       * gdbarch.sh (read_pc): Likewise.
+       * gdbarch.c: Re-generated.
+       * gdbarch.h: Re-generated.
+       * hppa-tdep.c (hppa_read_pc): Change parameter type to
+       readable_regcache.
+       * ia64-tdep.c (ia64_read_pc): Likewise.
+       * mips-tdep.c (mips_read_pc): Likewise.
+       * spu-tdep.c (spu_read_pc): Likewise.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * Makefile.in (COMMON_SFILES): Add regcache-dump.c
+       * regcache-dump.c: New file.
+       * regcache.c: Move register_dump to regcache-dump.c.
+       (maintenance_print_registers): Likewise.
+       (maintenance_print_raw_registers): Likewise.
+       (maintenance_print_cooked_registers): Likewise.
+       (maintenance_print_register_groups): Likewise.
+       (maintenance_print_remote_registers): Likewise.
+       (_initialize_regcache): Likewise.
+       * regcache.h (register_dump): Moved from regcache.c.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * regcache.c (regcache::regcache): Update.
+       (regcache::invalidate): Move it to detached_regcache::invalidate.
+       (get_thread_arch_aspace_regcache): Update.
+       (regcache::raw_update): Update.
+       (regcache::cooked_read): Remove some code.
+       (regcache::cooked_read_value): Likewise.
+       (regcache::raw_write): Remove assert on m_readonly_p.
+       (regcache::raw_supply_integer): Move it to
+       detached_regcache::raw_supply_integer.
+       (regcache::raw_supply_zeroed): Likewise.
+       * regcache.h (detached_regcache) <raw_supply_integer>: New
+       declaration.
+       <raw_supply_zeroed, invalidate>: Likewise.
+       (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
+       <invalidate>: Likewise.
+       <m_readonly_p>: Removed.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * infcmd.c (get_return_value): Let stop_regs point to
+       get_current_regcache.
+       * regcache.c (regcache::regcache): Remove.
+       (register_dump_reg_buffer): New class.
+       (regcache_print): Adjust.
+       * regcache.h (regcache): Remove constructors.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * regcache.c (class register_dump): New class.
+       (register_dump_regcache, register_dump_none): New class.
+       (register_dump_remote, register_dump_groups): New class.
+       (regcache_print): Update.
+       * regcache.h (regcache_dump_what): Move it to regcache.c.
+       (regcache) <dump>: Remove.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * jit.c (struct jit_unwind_private) <regcache>: Change its type to
+        reg_buffer_rw *.
+       (jit_unwind_reg_set_impl): Call raw_supply.
+       (jit_frame_sniffer): Use reg_buffer_rw.
+       * record-full.c (record_full_core_regbuf): Change its type.
+       (record_full_core_open_1): Use reg_buffer_rw.
+       (record_full_close): Likewise.
+       (record_full_core_fetch_registers): Use regcache->raw_supply.
+       (record_full_core_store_registers): Likewise.
+       * regcache.c (regcache::get_register_status): Move it to
+       reg_buffer.
+       (regcache_raw_set_cached_value): Remove.
+       (regcache::raw_set_cached_value): Remove.
+       (regcache::raw_write): Call raw_supply.
+       (regcache::raw_supply): Move it to reg_buffer_rw.
+       * regcache.h (regcache_raw_set_cached_value): Remove.
+       (reg_buffer_rw): New class.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
+       readonly_detached_regcache.
+       (dummy_frame_prev_register): Use regcache->cooked_read.
+       * frame.c (frame_save_as_regcache): Change return type.
+       (frame_pop): Update.
+       * frame.h (frame_save_as_regcache): Update declaration.
+       * inferior.h (get_infcall_suspend_state_regcache): Update
+       declaration.
+       * infrun.c (infcall_suspend_state) <registers>: use
+       readonly_detached_regcache.
+       (save_infcall_suspend_state): Don't use regcache_dup.
+       (get_infcall_suspend_state_regcache): Change return type.
+       * linux-fork.c (struct fork_info) <savedregs>: Change to
+       readonly_detached_regcache.
+       <pc>: New field.
+       (fork_save_infrun_state): Don't use regcache_dup.
+       (info_checkpoints_command): Adjust.
+       * mi/mi-main.c (register_changed_p): Update declaration.
+       (mi_cmd_data_list_changed_registers): Use
+       readonly_detached_regcache.
+       (register_changed_p): Change parameter type to
+       readonly_detached_regcache.
+       * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
+       readonly_detached_regcache.
+       (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
+       * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
+       New.
+       (regcache::save): Move it to reg_buffer.
+       (regcache::restore): Change parameter type.
+       (regcache_dup): Remove.
+       * regcache.h (reg_buffer) <save>: New method.
+       (readonly_detached_regcache): New class.
+       * spu-tdep.c (spu2ppu_cache) <regcache>: Use
+       readonly_detached_regcache.
+       (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
+
+2018-02-21  Yao Qi  <yao.qi@linaro.org>
+
+       * frame.c (frame_save_as_regcache): Use regcache method save.
+       (frame_pop): Use regcache method restore.
+       * infrun.c (restore_infcall_suspend_state): Likewise.
+       * linux-fork.c (fork_load_infrun_state): Likewise.
+       * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
+       save.
+       * regcache.c (regcache_save): Remove.
+       (regcache::restore): More asserts.
+       (regcache_cpy): Remove.
+       * regcache.h (regcache_save): Remove the declaration.
+       (regcache::restore): Move from private to public.
+       Remove the friend declaration of regcache_cpy.
+       (regcache_cpy): Remove declaration.
+
 2018-02-21  Yao Qi  <yao.qi@linaro.org>
 
        * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
This page took 0.025437 seconds and 4 git commands to generate.