mohit.bhakkad created this revision.
mohit.bhakkad added reviewers: clayborg, jingham.
mohit.bhakkad added subscribers: jaydeep, bhushan, sagar, nitesh.jain,
lldb-commits.
mohit.bhakkad set the repository for this revision to rL LLVM.
For archs like MIPS, where watchpoints are triggered before associated
instruction runs,
we need to disable watchpoint, single step and re-enable watchpoint, so that
process
resumes without reporting same watchpoint. This is provided by code at
Target/StopInfo.cpp:719
But if we check for ignore_count condition before this functionality, it
reports same watchpoint
again and again and gets ignored before ignore condition gets false.
So shifting this condition to appropriate location.
This solves TestWatchpointIgnoreCount.py testcase for MIPS.
Repository:
rL LLVM
http://reviews.llvm.org/D13296
Files:
source/Breakpoint/Watchpoint.cpp
source/Target/StopInfo.cpp
Index: source/Target/StopInfo.cpp
===================================================================
--- source/Target/StopInfo.cpp
+++ source/Target/StopInfo.cpp
@@ -759,6 +759,9 @@
if (!wp_hit_sp)
m_should_stop = false;
}
+
+ if (wp_sp->GetHitCount() <= wp_sp->GetIgnoreCount())
+ m_should_stop = false;
if (m_should_stop && wp_sp->GetConditionText() != NULL)
{
Index: source/Breakpoint/Watchpoint.cpp
===================================================================
--- source/Breakpoint/Watchpoint.cpp
+++ source/Breakpoint/Watchpoint.cpp
@@ -190,9 +190,6 @@
if (!IsEnabled())
return false;
- if (GetHitCount() <= GetIgnoreCount())
- return false;
-
return true;
}
Index: source/Target/StopInfo.cpp
===================================================================
--- source/Target/StopInfo.cpp
+++ source/Target/StopInfo.cpp
@@ -759,6 +759,9 @@
if (!wp_hit_sp)
m_should_stop = false;
}
+
+ if (wp_sp->GetHitCount() <= wp_sp->GetIgnoreCount())
+ m_should_stop = false;
if (m_should_stop && wp_sp->GetConditionText() != NULL)
{
Index: source/Breakpoint/Watchpoint.cpp
===================================================================
--- source/Breakpoint/Watchpoint.cpp
+++ source/Breakpoint/Watchpoint.cpp
@@ -190,9 +190,6 @@
if (!IsEnabled())
return false;
- if (GetHitCount() <= GetIgnoreCount())
- return false;
-
return true;
}
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits