diff options
author | Jim Ingham <jingham@apple.com> | 2010-06-16 02:00:15 +0000 |
---|---|---|
committer | Jim Ingham <jingham@apple.com> | 2010-06-16 02:00:15 +0000 |
commit | 1b54c88cc4f8582222644d65dfd61703206430ef (patch) | |
tree | 8f720e2946e32ece13de194e4ccfafffa21d9b3f /lldb/source/Breakpoint/BreakpointSite.cpp | |
parent | babff2ce5644a5f2af3a9cac323c1a97f39a90a1 (diff) | |
download | bcm5719-llvm-1b54c88cc4f8582222644d65dfd61703206430ef.tar.gz bcm5719-llvm-1b54c88cc4f8582222644d65dfd61703206430ef.zip |
Add a "thread specification" class that specifies thread specific breakpoints by name, index, queue or TID.
Push this through all the breakpoint management code. Allow this to be set when the breakpoint is created.
Fix the Process classes so that a breakpoint hit that is not for a particular thread is not reported as a
breakpoint hit event for that thread.
Added a "breakpoint configure" command to allow you to reset any of the thread
specific options (or the ignore count.)
llvm-svn: 106078
Diffstat (limited to 'lldb/source/Breakpoint/BreakpointSite.cpp')
-rw-r--r-- | lldb/source/Breakpoint/BreakpointSite.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lldb/source/Breakpoint/BreakpointSite.cpp b/lldb/source/Breakpoint/BreakpointSite.cpp index cd0920d07c7..d9397fcb412 100644 --- a/lldb/source/Breakpoint/BreakpointSite.cpp +++ b/lldb/source/Breakpoint/BreakpointSite.cpp @@ -80,9 +80,8 @@ BreakpointSite::Dump(Stream *s) const if (s == NULL) return; - s->Printf("BreakpointSite %u: tid = %4.4x addr = 0x%8.8llx type = %s breakpoint hw_index = %i hit_count = %-4u", + s->Printf("BreakpointSite %u: addr = 0x%8.8llx type = %s breakpoint hw_index = %i hit_count = %-4u", GetID(), - m_tid, (uint64_t)m_addr, IsHardware() ? "hardware" : "software", GetHardwareIndex(), @@ -178,6 +177,12 @@ BreakpointSite::GetOwnerAtIndex (uint32_t index) } bool +BreakpointSite::ValidForThisThread (Thread *thread) +{ + return m_owners.ValidForThisThread(thread); +} + +bool BreakpointSite::IntersectsRange(lldb::addr_t addr, size_t size, lldb::addr_t *intersect_addr, size_t *intersect_size, size_t *opcode_offset) const { // We only use software traps for software breakpoints |