summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/StopInfo.cpp
diff options
context:
space:
mode:
authorMohit K. Bhakkad <mohit.bhakkad@gmail.com>2015-11-03 09:04:33 +0000
committerMohit K. Bhakkad <mohit.bhakkad@gmail.com>2015-11-03 09:04:33 +0000
commit13763c304630ae39d953b6029483252b6403bf73 (patch)
tree7e844624a327908df55d70ec1f58999bf9a31532 /lldb/source/Target/StopInfo.cpp
parent73dc85293f003c0e81b1f3e6a255a24f1f8b6db6 (diff)
downloadbcm5719-llvm-13763c304630ae39d953b6029483252b6403bf73.tar.gz
bcm5719-llvm-13763c304630ae39d953b6029483252b6403bf73.zip
[LLDB][Watchpoint] Change ignore_count condition location to fix watchpoint ignore feature for architectures with watchpoint_exceptions_received=before
Reviewers: jingham. Subscribers: clayborg, jaydeep, bhushan, sagar, nitesh.jain, lldb-commits. Differential Revision: http://reviews.llvm.org/D13296 llvm-svn: 251905
Diffstat (limited to 'lldb/source/Target/StopInfo.cpp')
-rw-r--r--lldb/source/Target/StopInfo.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lldb/source/Target/StopInfo.cpp b/lldb/source/Target/StopInfo.cpp
index 9d926536930..e88b6467f7c 100644
--- a/lldb/source/Target/StopInfo.cpp
+++ b/lldb/source/Target/StopInfo.cpp
@@ -759,6 +759,16 @@ protected:
}
}
+ // TODO: This condition should be checked in the synchronous part of the watchpoint code
+ // (Watchpoint::ShouldStop), so that we avoid pulling an event even if the watchpoint fails
+ // the ignore count condition. It is moved here temporarily, because for archs with
+ // watchpoint_exceptions_received=before, the code in the previous lines takes care of moving
+ // the inferior to next PC. We have to check the ignore count condition after this is done,
+ // otherwise we will hit same watchpoint multiple times until we pass ignore condition, but we
+ // won't actually be ignoring them.
+ if (wp_sp->GetHitCount() <= wp_sp->GetIgnoreCount())
+ m_should_stop = false;
+
if (m_should_stop && wp_sp->GetConditionText() != NULL)
{
// We need to make sure the user sees any parse errors in their condition, so we'll hook the
OpenPOWER on IntegriCloud