GDB (xrefs)
|
#include "gdbsupport/common-regcache.h"
#include "gdbsupport/function-view.h"
Go to the source code of this file.
Classes | |
struct | regcache_map_entry |
struct | cached_reg_t |
class | reg_buffer |
class | readable_regcache |
class | detached_regcache |
class | regcache |
class | readonly_detached_regcache |
class | register_dump |
Typedefs | |
typedef gdb::function_view< register_status(int regnum, gdb_byte *buf) | register_read_ftype) |
using | regcache_up = std::unique_ptr<regcache> |
Enumerations | |
enum | { REGCACHE_MAP_SKIP = -1 } |
using regcache_up = std::unique_ptr<regcache> |
Definition at line 471 of file regcache.h.
typedef gdb::function_view<register_status (int regnum, gdb_byte *buf) register_read_ftype) |
Definition at line 176 of file regcache.h.
anonymous enum |
Enumerator | |
---|---|
REGCACHE_MAP_SKIP |
Definition at line 119 of file regcache.h.
|
extern |
Definition at line 429 of file regcache.c.
References get_thread_regcache(), and inferior_thread().
Referenced by arc_insn_get_branch_target(), arc_insn_get_operand_value(), arc_insn_get_operand_value_signed(), bookmark_1(), bsd_kvm_pcb_cmd(), bsd_kvm_proc_cmd(), bsd_kvm_target_open(), call_function_by_hand_dummy(), core_target_open(), create_new_frame(), current_me_module(), current_options(), darwin_read_exec_load_addr_at_init(), darwin_solib_create_inferior_hook(), darwin_solib_get_all_image_info_addr_at_init(), fork_load_infrun_state(), fork_save_infrun_state(), frame_pop(), frv_fdpic_loadmap_addresses(), generic_load(), get_call_return_value(), get_current_frame(), get_return_value(), get_traceframe_location(), handle_inferior_event(), handle_signal_stop(), i386_mpx_bd_base(), insert_single_step_breakpoints(), keep_going_pass_signal(), m32c_virtual_frame_pointer(), procfs_target::make_corefile_notes(), mi_cmd_data_write_register_values(), or1k_single_step_through_delay(), print_signal_received_reason(), proceed(), put_frame_register(), record_btrace_set_replay(), record_full_core_open_1(), record_full_goto_entry(), record_full_goto_insn(), record_full_restore(), record_full_wait_1(), regcache_print(), restore_infcall_suspend_state(), i386_fbsd_nat_target::resume(), record_full_target::resume(), windows_nat_target::resume(), resume_1(), run_command_1(), save_bookmark_command(), save_infcall_suspend_state(), record_full_base_target::save_record(), ia64_linux_nat_target::stopped_data_address(), svr4_handle_solib_event(), tfind_pc_command(), xtensa_read_register(), and xtensa_write_register().
|
extern |
Definition at line 466 of file regcache.c.
Referenced by get_thread_arch_regcache(), and handle_inferior_event().
|
extern |
Definition at line 384 of file regcache.c.
References regcache::aspace(), find_inferior_ptid(), get_thread_arch_aspace_regcache(), regcache::ptid(), set_current_inferior(), and target_thread_address_space().
Referenced by aarch64_fbsd_get_thread_local_address(), amd64fbsd_get_thread_local_address(), arm_fbsd_get_thread_local_address(), enable_break(), gcore_elf_build_thread_register_notes(), get_ps_regcache(), get_thread_regcache(), i386fbsd_get_thread_local_address(), ppcfbsd_get_thread_local_address(), remote_target::process_stop_reply(), ps_lgetfpregs(), ps_lgetregs(), ps_lsetfpregs(), ps_lsetregs(), and riscv_fbsd_get_thread_local_address().
|
extern |
Definition at line 400 of file regcache.c.
References current_thread_arch, current_thread_ptid, current_thread_target, find_inferior_ptid(), get_thread_arch_regcache(), regcache::ptid(), set_current_inferior(), and target_thread_architecture().
Referenced by aarch64_linux_get_syscall_number(), aarch64_remove_non_address_bits(), adjust_pc_after_break(), amd64_linux_get_syscall_number(), arm_linux_get_syscall_number(), bfin_linux_get_syscall_number(), breakpoint_kind(), btrace_add_pc(), darwin_nat_target::cancel_breakpoint(), fbsd_nat_target::detach(), displaced_step_prepare_throw(), do_target_wait_1(), elf_gnu_ifunc_resolver_return_stop(), ia64_linux_nat_target::enable_watchpoints_in_psr(), find_inline_frame_state(), displaced_step_buffers::finish(), finish_step_over(), get_current_regcache(), get_thread_regcache(), get_thread_regcache_for_ptid(), handle_inferior_event(), handle_one(), handle_signal_stop(), handle_syscall_event(), i386_linux_get_syscall_number(), keep_going_pass_signal(), keep_going_stepped_thread(), linux_nat_wait_1(), linux_resume_one_lwp_throw(), arc_linux_nat_target::low_prepare_to_resume(), i386_linux_nat_target::low_resume(), mips_linux_get_syscall_number(), post_create_inferior(), ppc_linux_get_syscall_number(), displaced_step_buffers::prepare(), process_one_event(), procfs_do_thread_registers(), displaced_step_buffers::restore_in_ptid(), resume_1(), resume_stopped_resumed_lwps(), s390_linux_get_syscall_number(), save_stop_reason(), save_waitstatus(), sparc32_linux_get_syscall_number(), sparc64_linux_get_syscall_number(), status_callback(), thread_still_needs_step_over_bp(), use_displaced_stepping(), and aix_thread_target::wait().
|
extern |
Definition at line 422 of file regcache.c.
References get_thread_regcache(), thread_info::inf, inferior::process_target(), and thread_info::ptid.
|
extern |
Definition at line 1273 of file regcache.c.
References regcache::collect_regset(), regnum, and size.
Referenced by aarch64_linux_iterate_over_regset_sections(), fill_fpregset(), fill_fpregset(), fill_gregset(), fill_gregset(), and store_regset().
|
extern |
Definition at line 772 of file regcache.c.
References readable_regcache::cooked_read(), and regnum.
Referenced by arc_insn_get_operand_value_signed().
|
extern |
Definition at line 796 of file regcache.c.
References readable_regcache::cooked_read(), and regnum.
Referenced by alpha_extract_return_value(), amd64_displaced_step_fixup(), arc_extract_return_value(), arc_insn_get_branch_target(), arc_insn_get_operand_value(), arc_linux_software_single_step(), arc_write_pc(), arm_extract_return_value(), arm_linux_cleanup_svc(), arm_linux_get_syscall_number(), arm_linux_sigreturn_next_pc(), arm_write_pc(), bfin_extract_return_value(), BP_MANIPULATION(), bx_write_pc(), cris_extract_return_value(), current_me_module(), current_options(), darwin_read_exec_load_addr_at_init(), displaced_in_arm_mode(), displaced_read_reg(), do_ppc_sysv_return_value(), ia64_linux_nat_target::enable_watchpoints_in_psr(), find_func_descr(), fixup_riprel(), frv_extract_return_value(), frv_fdpic_loadmap_addresses(), ft32_extract_return_value(), ravenscar_arch_ops::get_stack_base(), h8300_extract_return_value(), h8300h_extract_return_value(), i386_displaced_step_fixup(), ia64_allocate_new_rse_frame(), ia64_extract_return_value(), ia64_pseudo_register_write(), ia64_push_dummy_call(), ia64_write_pc(), iq2000_extract_return_value(), lm32_extract_return_value(), arc_linux_nat_target::low_prepare_to_resume(), i386_linux_nat_target::low_resume(), m32c_return_value(), m32r_extract_return_value(), moxie_extract_return_value(), moxie_software_single_step(), msp430_return_value(), nds32_extract_return_value(), or1k_return_value(), or1k_single_step_through_delay(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_return_value_base(), ppc_displaced_step_fixup(), ppc_sysv_abi_push_dummy_call(), regcache_read_pc(), i386_fbsd_nat_target::resume(), riscv_return_value(), rl78_return_value(), rs6000_lynx178_push_dummy_call(), rs6000_lynx178_return_value(), rs6000_push_dummy_call(), rs6000_return_value(), rx_return_value(), s390_displaced_step_fixup(), s390_linux_get_syscall_number(), s390_push_dummy_call(), s390_supply_tdb_regset(), sh_extract_return_value_nofpu(), sparc32_return_value(), sparc32_supply_gregset(), sparc64_linux_write_pc(), sparc64_supply_gregset(), sparc_linux_write_pc(), sparc_store_inferior_registers(), ia64_linux_nat_target::stopped_data_address(), v850_extract_return_value(), and xtensa_register_write_masked().
|
extern |
Definition at line 804 of file regcache.c.
References regcache::cooked_write(), and regnum.
Referenced by alpha_push_dummy_call(), BP_MANIPULATION(), mi_cmd_data_write_register_values(), mips_eabi_push_dummy_call(), mips_n32n64_push_dummy_call(), mips_o32_push_dummy_call(), mips_o64_push_dummy_call(), nios2_push_dummy_call(), ppc64_sysv_abi_push_dummy_call(), ppc_sysv_abi_push_dummy_call(), s390_register_return_value(), and tic6x_push_dummy_call().
|
extern |
Definition at line 825 of file regcache.c.
References regcache::cooked_write(), and regnum.
Referenced by aarch64_displaced_step_adr(), aarch64_displaced_step_b(), aarch64_displaced_step_fixup(), aarch64_displaced_step_ldr_literal(), aarch64_displaced_step_others(), aarch64_push_dummy_call(), alpha_store_return_value(), amd64_displaced_step_fixup(), amd64_linux_write_pc(), arc_push_dummy_call(), arc_store_return_value(), arc_write_pc(), arm_displaced_step_fixup(), arm_push_dummy_call(), arm_write_pc(), avr_push_dummy_call(), avr_write_pc(), bfin_push_dummy_call(), BP_MANIPULATION(), branch_write_pc(), bx_write_pc(), cris_push_dummy_call(), cris_store_return_value(), csky_push_dummy_call(), csky_return_value(), csky_write_pc(), displaced_write_reg(), do_ppc_sysv_return_value(), ia64_linux_nat_target::enable_watchpoints_in_psr(), fixup_riprel(), frv_push_dummy_call(), ft32_store_return_value(), h8300_push_dummy_call(), h8300_store_return_value(), h8300h_store_return_value(), hppa32_push_dummy_call(), hppa64_push_dummy_call(), hppa_linux_target_write_pc(), hppa_write_pc(), i386_linux_write_pc(), ia64_allocate_new_rse_frame(), ia64_linux_write_pc(), ia64_pseudo_register_write(), ia64_push_dummy_call(), ia64_store_return_value(), ia64_write_pc(), iq2000_push_dummy_call(), lm32_store_return_value(), loongarch_push_dummy_call(), arc_linux_nat_target::low_prepare_to_resume(), m32c_push_dummy_call(), m32c_return_value(), m32r_push_dummy_call(), m32r_store_return_value(), m68hc11_pseudo_register_write(), m68hc11_push_dummy_call(), mep_push_dummy_call(), mips_eabi_push_dummy_call(), mips_linux_write_pc(), mips_n32n64_push_dummy_call(), mips_o32_push_dummy_call(), mips_o64_push_dummy_call(), mips_write_pc(), mn10300_push_dummy_call(), moxie_store_return_value(), msp430_push_dummy_call(), msp430_return_value(), nds32_push_dummy_call(), nds32_store_return_value(), nios2_push_dummy_call(), or1k_push_dummy_call(), pass_in_x(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_return_value_base(), ppc_displaced_step_fixup(), ppc_linux_write_pc(), ppc_sysv_abi_push_dummy_call(), regcache_write_pc(), i386_fbsd_nat_target::resume(), riscv_push_dummy_call(), rl78_push_dummy_call(), rl78_return_value(), rs6000_lynx178_return_value(), rs6000_return_value(), rx_push_dummy_call(), rx_return_value(), s390_displaced_step_fixup(), s390_handle_arg(), s390_push_dummy_call(), s390_register_return_value(), s390_write_pc(), sh_push_dummy_call_fpu(), sh_push_dummy_call_nofpu(), sh_store_return_value_nofpu(), sparc32_push_dummy_call(), sparc64_linux_write_pc(), sparc64_push_dummy_call(), sparc64_store_arguments(), sparc_linux_write_pc(), sparc_write_pc(), ia64_linux_nat_target::stopped_data_address(), tic6x_push_dummy_call(), tilegx_push_dummy_call(), tilegx_write_pc(), v850_push_dummy_call(), v850_store_return_value(), vax_push_dummy_call(), xstormy16_push_dummy_call(), xtensa_push_dummy_call(), and xtensa_register_write_masked().
|
inlinestatic |
Definition at line 128 of file regcache.h.
References regcache_map_entry::count, and size.
Referenced by aarch64_fbsd_sigframe_init(), aarch64_linux_iterate_over_regset_sections(), and arm_fbsd_sigframe_init().
|
extern |
Definition at line 1291 of file regcache.c.
References regcache_map_entry::count, REGCACHE_MAP_SKIP, register_size(), regcache_map_entry::regno, regnum, size, and regcache_map_entry::size.
Referenced by fbsd_nat_target::fetch_register_set(), fbsd_nat_target::fetch_regset(), fbsd_nat_target::store_register_set(), and fbsd_nat_target::store_regset().
|
extern |
Definition at line 685 of file regcache.c.
References regcache_raw_read_signed(), regnum, status, and value.
Referenced by alpha_next_pc(), extended_mips16_next_pc(), loongarch_next_pc(), micromips_next_pc(), mips32_next_pc(), nios2_get_next_pc(), tic6x_condition_true(), and tic6x_get_next_pc().
|
extern |
Definition at line 626 of file regcache.c.
References readable_regcache::raw_read(), and regnum.
Referenced by arm_record_ld_st_reg_offset(), i386_linux_intx80_sysenter_syscall_record(), record_linux_system_call(), regcache_raw_get_signed(), and s390_linux_syscall_record().
|
extern |
Definition at line 657 of file regcache.c.
References regcache::raw_write(), and regnum.
Referenced by mips_pseudo_register_write(), rs6000_lynx178_push_dummy_call(), and rs6000_push_dummy_call().
|
extern |
Definition at line 677 of file regcache.c.
References regcache::raw_write(), and regnum.
Referenced by amd64_push_arguments(), amd64_return_value(), avr_pseudo_register_write(), i386_store_return_value(), i387_return_value(), mep_pseudo_csr_write(), msp430_pseudo_register_write(), raw_from_pseudo_register(), rs6000_lynx178_push_dummy_call(), rs6000_push_dummy_call(), s390_pseudo_register_write(), sparc64_pseudo_register_write(), and xtensa_write_register().
|
extern |
Definition at line 1251 of file regcache.c.
References regnum, size, and regcache::supply_regset().
Referenced by aarch64_linux_iterate_over_regset_sections(), fetch_regset(), frv_linux_supply_gregset(), ia64_linux_supply_fpregset(), s390_supply_tdb_regset(), supply_fpregset(), supply_fpregset(), supply_gregset(), and supply_gregset().
|
extern |
Definition at line 1377 of file regcache.c.
References reg_buffer::arch(), gdbarch_pc_regnum(), gdbarch_write_pc(), gdbarch_write_pc_p(), regcache_cooked_write_unsigned(), and reinit_frame_cache().
Referenced by aarch64_displaced_step_fixup(), adjust_pc_after_break(), amd64_displaced_step_fixup(), arm_displaced_step_fixup(), darwin_nat_target::cancel_breakpoint(), default_skip_permanent_breakpoint(), fbsd_nat_target::detach(), do_target_wait_1(), generic_load(), handle_inferior_event(), handle_signal_stop(), i386_displaced_step_fixup(), linux_nat_wait_1(), ppc_displaced_step_fixup(), displaced_step_buffers::prepare(), proceed(), process_one_event(), s390_displaced_step_fixup(), and save_stop_reason().
|
extern |
Definition at line 170 of file regcache.c.
References gdbarch_num_cooked_regs(), regcache_descr(), regnum, size, and regcache_descr::sizeof_register.
Referenced by aarch64_pseudo_read_value_1(), aarch64_pseudo_write_1(), aarch64_store_return_value(), alpha_value_to_register(), amd64_pseudo_register_read_value(), amd64_pseudo_register_write(), BP_MANIPULATION(), check_for_saved(), check_for_saved(), check_for_saved(), check_for_saved(), check_for_saved(), check_for_saved(), collection_list::collect_symbol(), csky_collect_fregset(), csky_supply_fregset(), regcache::debug_print_register(), default_guess_tracepoint_registers(), default_value_from_register(), register_dump_regcache::dump_reg(), register_dump_reg_buffer::dump_reg(), efp_pseudo_register_read(), efp_pseudo_register_write(), value::fetch_lazy_register(), fetch_register(), fetch_register(), linux_nat_trad_target::fetch_register(), fetch_register(), remote_target::fetch_register_using_p(), gdbsim_target::fetch_registers(), tfile_target::fetch_registers(), riscv_linux_nat_target::fetch_registers(), fetch_spe_register(), fill_fpregset(), fill_sprs32(), fill_sprs64(), pv_area::find_reg(), frame_unwind_got_bytes(), frame_unwind_got_constant(), frame_unwind_register_unsigned(), frame_unwind_register_value(), get_frame_register_bytes(), hppa_frame_prev_register_helper(), i386_extract_return_value(), i386_fast_tracepoint_valid_at(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i386_register_to_value(), i386_stap_adjust_register(), i386_store_return_value(), i386_value_to_register(), i387_register_to_value(), ia64_frame_prev_register(), ia64_linux_fetch_register(), ia64_linux_store_register(), ia64_pseudo_register_read(), ia64_pseudo_register_write(), ia64_register_to_value(), info_frame_command_core(), jit_frame_prev_register(), jit_unwind_reg_get_impl(), libunwind_get_reg_special(), loongarch_fill_fpregset(), loongarch_fill_gregset(), loongarch_iterate_over_regset_sections(), loongarch_push_dummy_call(), loongarch_return_value(), loongarch_supply_fpregset(), loongarch_supply_gregset(), m32r_push_dummy_call(), m68k_register_to_value(), map_regcache_remote_table(), mep_pseudo_csr_write(), mips2_fp_compat(), mips64_fill_fpregset(), mips64_linux_register_addr(), mips64_supply_fpregset(), mips_ax_pseudo_register_push_stack(), mips_convert_register_float_case_p(), mips_convert_register_gpreg_case_p(), mips_linux_get_syscall_number(), mips_linux_iterate_over_regset_sections(), mips_linux_restart_reg_p(), mips_n32n64_return_value(), mips_o32_push_dummy_call(), mips_o32_return_value(), mips_print_float_info(), mips_print_fp_register(), mips_pseudo_register_read(), mips_pseudo_register_write(), mips_read_fp_register_double(), mips_read_fp_register_single(), mips_xfer_register(), mn10300_extract_return_value(), mn10300_push_dummy_call(), mn10300_store_return_value(), msp430_pseudo_register_read(), msp430_pseudo_register_write(), nios2_extract_return_value(), nios2_store_return_value(), pass_in_v(), pd_enable(), ppc64_sysv_abi_return_value(), ppc_collect_reg(), ppc_linux_trap_reg_p(), ppc_register_u_addr(), ppc_supply_reg(), print_gp_register_row(), remote_target::process_g_packet(), pseudo_from_raw_register(), pseudo_register_read_portions(), put_frame_register(), put_frame_register_bytes(), pyuw_sniffer(), reg_buffer::raw_collect_part(), raw_from_pseudo_register(), reg_buffer::raw_supply_part(), read_frame_register_unsigned(), read_frame_register_value(), readable_regcache::read_part(), record_full_reg_alloc(), regcache_map_supplies(), regcache_register_size(), register_changed_p(), remote_target::remote_parse_stop_reply(), riscv_iterate_over_regset_sections(), riscv_print_one_register_info(), riscv_pseudo_register_read(), riscv_pseudo_register_write(), riscv_return_value(), rs6000_frame_cache(), rs6000_lynx178_push_dummy_call(), rs6000_push_dummy_call(), rs6000_register_to_value(), rw_pieced_value(), s390_ax_pseudo_register_push_stack(), s390_displaced_step_fixup(), s390_guess_tracepoint_registers(), s390_pseudo_register_read(), s390_pseudo_register_write(), s390_write_pc(), reg_buffer::save(), sh_pseudo_register_write(), sh_push_dummy_call_fpu(), sh_push_dummy_call_nofpu(), sh_register_convert_to_raw(), sh_register_convert_to_virtual(), sparc_execute_dwarf_cfa_vendor_op(), ravenscar_arch_ops::store_one_register(), store_register(), linux_nat_trad_target::store_register(), store_register(), store_register(), remote_target::store_register_using_P(), i386_gnu_nat_target::store_registers(), gdbsim_target::store_registers(), riscv_linux_nat_target::store_registers(), store_spe_register(), supply_64bit_reg(), supply_fpregset_regnum(), ravenscar_arch_ops::supply_one_register(), trad_frame_set_reg_regmap(), regcache::transfer_regset_register(), unwind_infopy_add_saved_register(), windows_fetch_one_register(), and regcache::write_part().
Definition at line 158 of file regcache.c.
References regcache_descr::nr_cooked_registers, regcache_descr(), regcache_descr::register_type, and regnum.
Referenced by aarch64_gen_return_address(), aarch64_pseudo_read_value(), amd64_gen_return_address(), amd64_pseudo_register_read_value(), check_for_saved(), readable_regcache::cooked_read_value(), default_register_reggroup_p(), expr::register_operation::do_generate_ax(), do_ppc_sysv_return_value(), dummy_frame_prev_register(), register_dump::dump(), eval_op_register(), amd_dbgapi_target::fetch_registers(), frame_unwind_got_address(), frame_unwind_got_bytes(), frame_unwind_got_constant(), frame_unwind_got_memory(), frame_unwind_got_optimized(), generate_register_struct(), i386_gen_return_address(), i386_pseudo_register_read_value(), ia64_extract_return_value(), ia64_register_reggroup_p(), ia64_store_return_value(), m68k_convert_register_p(), m68k_register_to_value(), m68k_svr4_extract_return_value(), m68k_svr4_store_return_value(), m68k_value_to_register(), mep_pseudo_cr32_read(), mep_pseudo_cr32_write(), mips_register_reggroup_p(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_push_freg(), ppc64_sysv_abi_return_value(), ppc64_sysv_abi_return_value_base(), ppc_sysv_abi_push_dummy_call(), rs6000_gen_return_address(), rs6000_lynx178_push_dummy_call(), rs6000_lynx178_return_value(), rs6000_push_dummy_call(), rs6000_return_value(), s390_gen_return_address(), s390_unwind_pseudo_register(), set_gdbarch_register_type(), sh_pseudo_register_read(), sh_pseudo_register_write(), amd_dbgapi_target::store_registers(), and value_of_register_lazy().
|
extern |
Definition at line 580 of file regcache.c.
References registers_changed_ptid().
Referenced by core_target_open(), core_target::detach(), exit_inferior(), fork_load_infrun_state(), generic_mourn_inferior(), linux_nat_switch_fork(), record_full_goto_entry(), record_full_wait_1(), reg_flush_command(), regcache_observer_target_changed(), set_current_traceframe(), set_target_gdbarch(), and simulator_command().
|
extern |
Definition at line 497 of file regcache.c.
References current_inferior(), current_thread_arch, current_thread_ptid, current_thread_target, inferior_ptid, regcache::ptid(), regcaches, and reinit_frame_cache().
Referenced by linux_resume_one_lwp_throw(), registers_changed(), registers_changed_thread(), target_detach(), and target_resume().
|
extern |
Definition at line 574 of file regcache.c.
References thread_info::inf, inferior::process_target(), thread_info::ptid, and registers_changed_ptid().
Referenced by record_btrace_set_replay(), record_btrace_start_replaying(), record_btrace_stop_replaying(), and record_btrace_target::wait().