GDB (xrefs)
|
#include "displaced-stepping.h"
Classes | |
struct | displaced_step_buffer |
Public Member Functions | |
displaced_step_buffers (gdb::array_view< CORE_ADDR > buffer_addrs) | |
displaced_step_prepare_status | prepare (thread_info *thread, CORE_ADDR &displaced_pc) |
displaced_step_finish_status | finish (gdbarch *arch, thread_info *thread, const target_waitstatus &status) |
const displaced_step_copy_insn_closure * | copy_insn_closure_by_addr (CORE_ADDR addr) |
void | restore_in_ptid (ptid_t ptid) |
Private Attributes | |
std::vector< displaced_step_buffer > | m_buffers |
Definition at line 154 of file displaced-stepping.h.
|
inlineexplicit |
Definition at line 156 of file displaced-stepping.h.
References copy_insn_closure_by_addr(), displaced_step_buffers(), finish(), m_buffers, prepare(), restore_in_ptid(), and status.
Referenced by displaced_step_buffers().
const displaced_step_copy_insn_closure * displaced_step_buffers::copy_insn_closure_by_addr | ( | CORE_ADDR | addr | ) |
Definition at line 276 of file displaced-stepping.c.
References m_buffers.
Referenced by displaced_step_buffers().
displaced_step_finish_status displaced_step_buffers::finish | ( | gdbarch * | arch, |
thread_info * | thread, | ||
const target_waitstatus & | status ) |
Definition at line 217 of file displaced-stepping.c.
References displaced_step_buffers::displaced_step_buffer::addr, displaced_step_buffers::displaced_step_buffer::copy_insn_closure, displaced_step_buffers::displaced_step_buffer::current_thread, displaced_debug_printf, DISPLACED_STEP_FINISH_STATUS_NOT_EXECUTED, DISPLACED_STEP_FINISH_STATUS_OK, displaced_step_instruction_executed_successfully(), thread_info::displaced_step_state, inferior::displaced_step_state, gdbarch_displaced_step_buffer_length(), gdbarch_displaced_step_fixup(), get_thread_regcache(), displaced_step_thread_state::in_progress(), thread_info::inf, m_buffers, displaced_step_buffers::displaced_step_buffer::original_pc, paddress(), thread_info::ptid, displaced_step_buffers::displaced_step_buffer::saved_copy, status, displaced_step_inferior_state::unavailable, and write_memory_ptid().
Referenced by displaced_step_buffers().
displaced_step_prepare_status displaced_step_buffers::prepare | ( | thread_info * | thread, |
CORE_ADDR & | displaced_pc ) |
Definition at line 47 of file displaced-stepping.c.
References displaced_step_buffers::displaced_step_buffer::addr, reg_buffer::arch(), regcache::aspace(), breakpoint_in_range_p(), displaced_step_buffers::displaced_step_buffer::copy_insn_closure, displaced_step_buffers::displaced_step_buffer::current_thread, displaced_debug_printf, DISPLACED_STEP_PREPARE_STATUS_CANT, DISPLACED_STEP_PREPARE_STATUS_OK, DISPLACED_STEP_PREPARE_STATUS_UNAVAILABLE, thread_info::displaced_step_state, inferior::displaced_step_state, gdbarch_displaced_step_buffer_length(), gdbarch_displaced_step_copy_insn(), get_thread_regcache(), displaced_step_thread_state::in_progress(), thread_info::inf, m_buffers, displaced_step_buffers::displaced_step_buffer::original_pc, paddress(), regcache_read_pc(), regcache_write_pc(), displaced_step_buffers::displaced_step_buffer::saved_copy, status, target_read_memory(), and displaced_step_inferior_state::unavailable.
Referenced by displaced_step_buffers().
void displaced_step_buffers::restore_in_ptid | ( | ptid_t | ptid | ) |
Definition at line 293 of file displaced-stepping.c.
References reg_buffer::arch(), displaced_debug_printf, gdbarch_displaced_step_buffer_length(), get_thread_regcache(), m_buffers, paddress(), and write_memory_ptid().
Referenced by displaced_step_buffers().
|
private |
Definition at line 206 of file displaced-stepping.h.
Referenced by copy_insn_closure_by_addr(), displaced_step_buffers(), finish(), prepare(), and restore_in_ptid().