Records

Functions

  • debug_ipc::ExceptionType DecodeExceptionType (int signal, int sig_code)

    Converts a siginfo_t.si_code value to an ExceptionType.

    Defined at line 57 of file ../../src/developer/debug/debug_agent/linux_arch_x64.cc

  • debug::Arch GetCurrentArch ()

    Defined at line 67 of file ../../src/developer/debug/debug_agent/arch_x64.cc

  • uint32_t GetHardwareBreakpointCount ()

    Returns the number of hardware breakpoints and watchpoints on the current system.

    Defined at line 19 of file ../../src/developer/debug/debug_agent/linux_arch_x64.cc

  • uint32_t GetHardwareWatchpointCount ()

    Defined at line 24 of file ../../src/developer/debug/debug_agent/linux_arch_x64.cc

  • void SaveGeneralRegs (const PlatformGeneralRegisters & input, std::vector<debug::RegisterValue> & out)

    Converts the given register structure to a vector of debug_ipc registers.

    Defined at line 29 of file ../../src/developer/debug/debug_agent/linux_arch_x64.cc

  • template <typename RegType>
    zx_status_t WriteRegisterValue (const debug::RegisterValue & reg, RegType * dest)

    Writes the register data to the given output variable, checking that the register data is

    the same size as the output.

    Defined at line 76 of file ../../src/developer/debug/debug_agent/arch.h

  • zx_status_t ReadRegisters (const zx::thread & thread, const debug::RegisterCategory & cat, std::vector<debug::RegisterValue> & out)

    The registers in the given category are appended to the given output vector.

    Defined at line 128 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteRegisters (zx::thread & thread, const debug::RegisterCategory & cat, const std::vector<debug::RegisterValue> & registers)

    The registers must all be in the same category.

    Defined at line 146 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteFloatingPointRegisters (const std::vector<debug::RegisterValue> & update, zx_thread_state_fp_regs_t * regs)

    Given the current register value in |regs|, applies to it the new updated values for the

    registers listed in |updates|.

    Defined at line 232 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteVectorRegisters (const std::vector<debug::RegisterValue> & update, zx_thread_state_vector_regs_t * regs)

    Defined at line 262 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteDebugRegisters (const std::vector<debug::RegisterValue> & update, zx_thread_state_debug_regs_t * regs)

    Defined at line 285 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • debug_ipc::ExceptionType DecodeExceptionType (const zx::thread & thread, uint32_t exception_type)

    Converts a Zircon exception type to a debug_ipc one. Some exception types require querying the

    thread's debug registers. If needed, the given thread will be used for that.

    Defined at line 319 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • debug_ipc::ExceptionRecord FillExceptionRecord (const zx_exception_report_t & in)

    Converts an architecture-specific exception record to a cross-platform one.

    Defined at line 343 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • void SaveGeneralRegs (const PlatformGeneralRegisters & input, std::vector<debug::RegisterValue> & out)

    Converts the given register structure to a vector of debug_ipc registers.

    Defined at line 104 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteGeneralRegisters (const std::vector<debug::RegisterValue> & updates, PlatformGeneralRegisters * regs)

    Given the current register value in |regs|, applies to it the new updated values for the

    registers listed in |updates|.

    Defined at line 208 of file ../../src/developer/debug/debug_agent/zircon_arch_x64.cc

  • zx_status_t WriteGeneralRegisters (const std::vector<debug::RegisterValue> & updates, PlatformGeneralRegisters * regs)

    Given the current register value in |regs|, applies to it the new updated values for the

    registers listed in |updates|.

  • bool IsBreakpointInstruction (BreakInstructionType instruction)

    Returns true if the given opcode is a breakpoint instruction. This checked for equality with

    kBreakInstruction and also checks other possible breakpoint encodings for the current platform.

    Defined at line 69 of file ../../src/developer/debug/debug_agent/arch_x64.cc

  • uint64_t BreakpointInstructionForHardwareExceptionAddress (uint64_t exception_addr)

    Returns the address of the instruction that hit the exception from the address reported by the

    exception.

    Defined at line 78 of file ../../src/developer/debug/debug_agent/arch_x64.cc

Variables

const BreakInstructionType kBreakInstruction

Defined at line 61 of file ../../src/developer/debug/debug_agent/arch_x64.cc

const int64_t kExceptionOffsetForSoftwareBreakpoint

Defined at line 65 of file ../../src/developer/debug/debug_agent/arch_x64.cc