aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/Module.cpp
diff options
context:
space:
mode:
authorOCHyams <orlando.hyams@sony.com>2021-05-17 08:57:43 +0100
committerOCHyams <orlando.hyams@sony.com>2021-05-17 09:01:55 +0100
commita11117a7c0a23f37bdee5c611bbaac22e89c775d (patch)
treec482dc7a7571a55c2e4beeaf9db3d46a7c725cf2 /clang/lib/Basic/Module.cpp
parent84306ef9c442e335b53c3d87948258a528346e6f (diff)
downloadllvm-a11117a7c0a23f37bdee5c611bbaac22e89c775d.zip
llvm-a11117a7c0a23f37bdee5c611bbaac22e89c775d.tar.gz
llvm-a11117a7c0a23f37bdee5c611bbaac22e89c775d.tar.bz2
[dexter] Remove unnecessary double check on conditional breakpoints
Remove the `ConditionalController._conditional_met` method. This was missed in the recent ConditionalController refactor (D98699). We don't need to check that the conditions for a conditional breakpoint have been met because `DebuggerBase.get_triggered_breakpoint_ids` returns the set of ids for breakpoints which have been triggered. To get the "triggered breakpoints" from lldb we use `GetStopReasonDataCount` and `GetStopReasonDataAtIndex`. It seems that these functions count all breakpoints associated with the location which lldb has stopped at, regardless of their condition. i.e. Even if we have two breakpoints at the same source location that have mutually exclusive conditions, both will be found this way when either condition is true. To get around this, we store a map of breakpoint {id: condition} `_breakpoint_conditions` and evaluate the conditions of the triggered breakpoints to filter the set down to those which are unconditional or have a condition which evaluates to true. Essentially we are just moving the condition double check from a general debugger controller into the lldb specific wrapper. This tidy up will help make upcoming patches simpler. Reviewed By: chrisjackson Differential Revision: https://reviews.llvm.org/D101431
Diffstat (limited to 'clang/lib/Basic/Module.cpp')
0 files changed, 0 insertions, 0 deletions