/openbsd-src/gnu/llvm/lldb/source/Plugins/Process/Utility/ |
H A D | NativeRegisterContextDBReg_x86.cpp | 18 static inline uint64_t GetStatusBit(uint32_t wp_index) { in GetStatusBit() argument 21 return 1ULL << wp_index; in GetStatusBit() 25 static inline uint64_t GetEnableBit(uint32_t wp_index) { in GetEnableBit() argument 30 return 1ULL << (2 * wp_index + 1); in GetEnableBit() 34 static inline uint64_t GetBothEnableBitMask(uint32_t wp_index) { in GetBothEnableBitMask() argument 37 return 3ULL << (2 * wp_index + 1); in GetBothEnableBitMask() 42 uint32_t wp_index) { in GetWatchTypeBits() argument 50 return static_cast<uint64_t>(watch_flags) << (16 + 4 * wp_index); in GetWatchTypeBits() 54 static inline uint64_t GetWatchSizeBits(uint32_t size, uint32_t wp_index) { in GetWatchSizeBits() argument 67 << (18 + 4 * wp_index); in GetWatchSizeBits() [all …]
|
H A D | NativeRegisterContextDBReg_arm64.cpp | 236 uint32_t control_value = 0, wp_index = 0; in SetHardwareWatchpoint() local 281 wp_index = LLDB_INVALID_INDEX32; in SetHardwareWatchpoint() 284 wp_index = i; // Mark last free slot in SetHardwareWatchpoint() 290 if (wp_index == LLDB_INVALID_INDEX32) in SetHardwareWatchpoint() 294 m_hwp_regs[wp_index].real_addr = real_addr; in SetHardwareWatchpoint() 295 m_hwp_regs[wp_index].address = addr; in SetHardwareWatchpoint() 296 m_hwp_regs[wp_index].control = control_value; in SetHardwareWatchpoint() 302 m_hwp_regs[wp_index].address = 0; in SetHardwareWatchpoint() 303 m_hwp_regs[wp_index].control &= ~g_enable_bit; in SetHardwareWatchpoint() 311 return wp_index; in SetHardwareWatchpoint() [all …]
|
H A D | NativeRegisterContextDBReg_x86.h | 25 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 27 Status GetWatchpointHitIndex(uint32_t &wp_index, 30 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 32 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 34 Status ClearWatchpointHit(uint32_t wp_index) override; 40 uint32_t wp_index); 45 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
|
H A D | NativeRegisterContextDBReg_arm64.h | 43 Status GetWatchpointHitIndex(uint32_t &wp_index, 46 lldb::addr_t GetWatchpointHitAddress(uint32_t wp_index) override; 48 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 50 uint32_t GetWatchpointSize(uint32_t wp_index); 52 bool WatchpointIsEnabled(uint32_t wp_index);
|
/openbsd-src/gnu/llvm/lldb/source/Plugins/Process/Linux/ |
H A D | NativeRegisterContextLinux_arm.cpp | 475 uint32_t control_value = 0, wp_index = 0, addr_word_offset = 0, byte_mask = 0; in SetHardwareWatchpoint() local 538 wp_index = LLDB_INVALID_INDEX32; in SetHardwareWatchpoint() 541 wp_index = i; // Mark last free slot in SetHardwareWatchpoint() 547 if (wp_index == LLDB_INVALID_INDEX32) in SetHardwareWatchpoint() 551 m_hwp_regs[wp_index].real_addr = real_addr; in SetHardwareWatchpoint() 552 m_hwp_regs[wp_index].address = addr; in SetHardwareWatchpoint() 553 m_hwp_regs[wp_index].control = control_value; in SetHardwareWatchpoint() 556 error = WriteHardwareDebugRegs(eDREGTypeWATCH, wp_index); in SetHardwareWatchpoint() 559 m_hwp_regs[wp_index].address = 0; in SetHardwareWatchpoint() 560 m_hwp_regs[wp_index].control &= ~1; in SetHardwareWatchpoint() [all …]
|
H A D | NativeRegisterContextLinux_ppc64le.cpp | 532 uint32_t control_value = 0, wp_index = 0; in SetHardwareWatchpoint() local 576 wp_index = LLDB_INVALID_INDEX32; in SetHardwareWatchpoint() 579 wp_index = i; // Mark last free slot in SetHardwareWatchpoint() 585 if (wp_index == LLDB_INVALID_INDEX32) in SetHardwareWatchpoint() 589 m_hwp_regs[wp_index].real_addr = real_addr; in SetHardwareWatchpoint() 590 m_hwp_regs[wp_index].address = addr; in SetHardwareWatchpoint() 591 m_hwp_regs[wp_index].control = control_value; in SetHardwareWatchpoint() 592 m_hwp_regs[wp_index].mode = rw_mode; in SetHardwareWatchpoint() 598 m_hwp_regs[wp_index].address = 0; in SetHardwareWatchpoint() 599 m_hwp_regs[wp_index].control &= llvm::maskTrailingZeros<uint32_t>(1); in SetHardwareWatchpoint() [all …]
|
H A D | NativeRegisterContextLinux_s390x.cpp | 487 Status NativeRegisterContextLinux_s390x::IsWatchpointHit(uint32_t wp_index, in IsWatchpointHit() argument 491 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointHit() 520 uint32_t &wp_index, lldb::addr_t trap_addr) { in GetWatchpointHitIndex() argument 522 for (wp_index = 0; wp_index < num_hw_wps; ++wp_index) { in GetWatchpointHitIndex() 524 Status error = IsWatchpointHit(wp_index, is_hit); in GetWatchpointHitIndex() 526 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 532 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 536 Status NativeRegisterContextLinux_s390x::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 538 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointVacant() 547 uint32_t wp_index) { in ClearHardwareWatchpoint() argument [all …]
|
H A D | NativeRegisterContextLinux_ppc64le.h | 59 Status GetWatchpointHitIndex(uint32_t &wp_index, 62 lldb::addr_t GetWatchpointHitAddress(uint32_t wp_index) override; 64 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 66 uint32_t GetWatchpointSize(uint32_t wp_index); 68 bool WatchpointIsEnabled(uint32_t wp_index);
|
H A D | NativeRegisterContextLinux_s390x.h | 45 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 47 Status GetWatchpointHitIndex(uint32_t &wp_index, 50 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 52 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 59 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
|
H A D | NativeRegisterContextLinux_arm.h | 66 Status GetWatchpointHitIndex(uint32_t &wp_index, 69 lldb::addr_t GetWatchpointHitAddress(uint32_t wp_index) override; 71 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 73 uint32_t GetWatchpointSize(uint32_t wp_index); 75 bool WatchpointIsEnabled(uint32_t wp_index);
|
H A D | NativeThreadLinux.cpp | 160 uint32_t wp_index = in SetWatchpoint() local 162 if (wp_index == LLDB_INVALID_INDEX32) in SetWatchpoint() 164 m_watchpoint_index_map.insert({addr, wp_index}); in SetWatchpoint() 172 uint32_t wp_index = wp->second; in RemoveWatchpoint() local 174 if (m_reg_context_up->ClearHardwareWatchpoint(wp_index)) in RemoveWatchpoint() 412 void NativeThreadLinux::SetStoppedByWatchpoint(uint32_t wp_index) { in SetStoppedByWatchpoint() argument 415 lldbassert(wp_index != LLDB_INVALID_INDEX32 && "wp_index cannot be invalid"); in SetStoppedByWatchpoint() 418 ostr << m_reg_context_up->GetWatchpointAddress(wp_index) << " "; in SetStoppedByWatchpoint() 419 ostr << wp_index; in SetStoppedByWatchpoint() 432 ostr << " " << m_reg_context_up->GetWatchpointHitAddress(wp_index); in SetStoppedByWatchpoint()
|
/openbsd-src/gnu/llvm/lldb/source/Plugins/Process/Windows/Common/ |
H A D | NativeRegisterContextWindows_WoW64.cpp | 406 Status NativeRegisterContextWindows_WoW64::IsWatchpointHit(uint32_t wp_index, in IsWatchpointHit() argument 410 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointHit() 418 is_hit = reg_value.GetAsUInt32() & (1 << wp_index); in IsWatchpointHit() 424 uint32_t &wp_index, lldb::addr_t trap_addr) { in GetWatchpointHitIndex() argument 425 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 434 wp_index = i; in GetWatchpointHitIndex() 442 Status NativeRegisterContextWindows_WoW64::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 446 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointVacant() 454 is_vacant = !(reg_value.GetAsUInt32() & (1 << (2 * wp_index))); in IsWatchpointVacant() 460 uint32_t wp_index) { in ClearHardwareWatchpoint() argument [all …]
|
H A D | NativeRegisterContextWindows_i386.cpp | 416 Status NativeRegisterContextWindows_i386::IsWatchpointHit(uint32_t wp_index, in IsWatchpointHit() argument 420 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointHit() 428 is_hit = reg_value.GetAsUInt32() & (1 << wp_index); in IsWatchpointHit() 434 uint32_t &wp_index, lldb::addr_t trap_addr) { in GetWatchpointHitIndex() argument 435 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 444 wp_index = i; in GetWatchpointHitIndex() 452 Status NativeRegisterContextWindows_i386::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 456 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointVacant() 464 is_vacant = !(reg_value.GetAsUInt32() & (1 << (2 * wp_index))); in IsWatchpointVacant() 470 uint32_t wp_index) { in ClearHardwareWatchpoint() argument [all …]
|
H A D | NativeRegisterContextWindows_x86_64.cpp | 619 Status NativeRegisterContextWindows_x86_64::IsWatchpointHit(uint32_t wp_index, in IsWatchpointHit() argument 623 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointHit() 631 is_hit = reg_value.GetAsUInt64() & (1ULL << wp_index); in IsWatchpointHit() 637 uint32_t &wp_index, lldb::addr_t trap_addr) { in GetWatchpointHitIndex() argument 638 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 647 wp_index = i; in GetWatchpointHitIndex() 656 NativeRegisterContextWindows_x86_64::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 660 if (wp_index >= NumSupportedHardwareWatchpoints()) in IsWatchpointVacant() 668 is_vacant = !(reg_value.GetAsUInt64() & (1ULL << (2 * wp_index))); in IsWatchpointVacant() 674 uint32_t wp_index) { in ClearHardwareWatchpoint() argument [all …]
|
H A D | NativeRegisterContextWindows_arm.h | 40 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 42 Status GetWatchpointHitIndex(uint32_t &wp_index, 45 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 47 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 53 uint32_t wp_index); 58 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
|
H A D | NativeRegisterContextWindows_arm64.h | 40 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 42 Status GetWatchpointHitIndex(uint32_t &wp_index, 45 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 47 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 53 uint32_t wp_index); 58 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override;
|
H A D | NativeRegisterContextWindows_WoW64.h | 41 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 43 Status GetWatchpointHitIndex(uint32_t &wp_index, 46 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 48 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 55 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 67 Status ApplyHardwareBreakpoint(uint32_t wp_index, lldb::addr_t addr,
|
H A D | NativeRegisterContextWindows_i386.h | 41 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 43 Status GetWatchpointHitIndex(uint32_t &wp_index, 46 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 48 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 55 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 67 Status ApplyHardwareBreakpoint(uint32_t wp_index, lldb::addr_t addr,
|
H A D | NativeRegisterContextWindows_x86_64.h | 42 Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override; 44 Status GetWatchpointHitIndex(uint32_t &wp_index, 47 Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant) override; 49 bool ClearHardwareWatchpoint(uint32_t wp_index) override; 56 lldb::addr_t GetWatchpointAddress(uint32_t wp_index) override; 71 Status ApplyHardwareBreakpoint(uint32_t wp_index, lldb::addr_t addr,
|
H A D | NativeThreadWindows.cpp | 160 uint32_t wp_index = in SetWatchpoint() local 162 if (wp_index == LLDB_INVALID_INDEX32) in SetWatchpoint() 164 m_watchpoint_index_map.insert({addr, wp_index}); in SetWatchpoint() 172 uint32_t wp_index = wp->second; in RemoveWatchpoint() local 174 if (m_reg_context_up->ClearHardwareWatchpoint(wp_index)) in RemoveWatchpoint()
|
H A D | NativeRegisterContextWindows_arm.cpp | 600 Status NativeRegisterContextWindows_arm::IsWatchpointHit(uint32_t wp_index, in IsWatchpointHit() argument 606 uint32_t &wp_index, lldb::addr_t trap_addr) { in GetWatchpointHitIndex() argument 610 Status NativeRegisterContextWindows_arm::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 616 lldb::addr_t addr, size_t size, uint32_t watch_flags, uint32_t wp_index) { in SetHardwareWatchpointWithIndex() argument 621 uint32_t wp_index) { in ClearHardwareWatchpoint() argument 635 NativeRegisterContextWindows_arm::GetWatchpointAddress(uint32_t wp_index) { in GetWatchpointAddress() argument
|
/openbsd-src/gnu/llvm/lldb/source/Plugins/Process/FreeBSD/ |
H A D | NativeThreadFreeBSD.cpp | 118 void NativeThreadFreeBSD::SetStoppedByWatchpoint(uint32_t wp_index) { in SetStoppedByWatchpoint() argument 119 lldbassert(wp_index != LLDB_INVALID_INDEX32 && "wp_index cannot be invalid"); in SetStoppedByWatchpoint() 122 ostr << GetRegisterContext().GetWatchpointAddress(wp_index) << " "; in SetStoppedByWatchpoint() 123 ostr << wp_index; in SetStoppedByWatchpoint() 125 ostr << " " << GetRegisterContext().GetWatchpointHitAddress(wp_index); in SetStoppedByWatchpoint() 260 uint32_t wp_index = in SetWatchpoint() local 262 if (wp_index == LLDB_INVALID_INDEX32) in SetWatchpoint() 264 m_watchpoint_index_map.insert({addr, wp_index}); in SetWatchpoint() 272 uint32_t wp_index = wp->second; in RemoveWatchpoint() local 274 if (GetRegisterContext().ClearHardwareWatchpoint(wp_index)) in RemoveWatchpoint()
|
/openbsd-src/gnu/llvm/lldb/source/Plugins/Process/NetBSD/ |
H A D | NativeThreadNetBSD.cpp | 118 void NativeThreadNetBSD::SetStoppedByWatchpoint(uint32_t wp_index) { in SetStoppedByWatchpoint() argument 119 lldbassert(wp_index != LLDB_INVALID_INDEX32 && "wp_index cannot be invalid"); in SetStoppedByWatchpoint() 122 ostr << GetRegisterContext().GetWatchpointAddress(wp_index) << " "; in SetStoppedByWatchpoint() 123 ostr << wp_index; in SetStoppedByWatchpoint() 125 ostr << " " << GetRegisterContext().GetWatchpointHitAddress(wp_index); in SetStoppedByWatchpoint() 272 uint32_t wp_index = in SetWatchpoint() local 274 if (wp_index == LLDB_INVALID_INDEX32) in SetWatchpoint() 276 m_watchpoint_index_map.insert({addr, wp_index}); in SetWatchpoint() 284 uint32_t wp_index = wp->second; in RemoveWatchpoint() local 286 if (GetRegisterContext().ClearHardwareWatchpoint(wp_index)) in RemoveWatchpoint()
|
/openbsd-src/gnu/llvm/lldb/include/lldb/Host/common/ |
H A D | NativeRegisterContext.h | 84 virtual Status IsWatchpointHit(uint32_t wp_index, bool &is_hit); 86 virtual Status GetWatchpointHitIndex(uint32_t &wp_index, 89 virtual Status IsWatchpointVacant(uint32_t wp_index, bool &is_vacant); 91 virtual lldb::addr_t GetWatchpointAddress(uint32_t wp_index); 102 virtual lldb::addr_t GetWatchpointHitAddress(uint32_t wp_index);
|
/openbsd-src/gnu/llvm/lldb/source/Host/common/ |
H A D | NativeRegisterContext.cpp | 288 Status NativeRegisterContext::IsWatchpointHit(uint32_t wp_index, bool &is_hit) { in IsWatchpointHit() argument 293 Status NativeRegisterContext::GetWatchpointHitIndex(uint32_t &wp_index, in GetWatchpointHitIndex() argument 295 wp_index = LLDB_INVALID_INDEX32; in GetWatchpointHitIndex() 299 Status NativeRegisterContext::IsWatchpointVacant(uint32_t wp_index, in IsWatchpointVacant() argument 305 lldb::addr_t NativeRegisterContext::GetWatchpointAddress(uint32_t wp_index) { in GetWatchpointAddress() argument 309 lldb::addr_t NativeRegisterContext::GetWatchpointHitAddress(uint32_t wp_index) { in GetWatchpointHitAddress() argument
|