[all-commits] [llvm/llvm-project] 15d2ca: [lldb] Speed up evaluating breakpoint conditions b...
Ilia Kuklin via All-commits
all-commits at lists.llvm.org
Mon Sep 28 11:22:30 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 15d2ca3ced8c18dcbc0b666f4de5067d4586e857
https://github.com/llvm/llvm-project/commit/15d2ca3ced8c18dcbc0b666f4de5067d4586e857
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-09-28 (Mon, 28 Sep 2026)
Changed paths:
M lldb/include/lldb/API/SBBreakpoint.h
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointLocation.h
M lldb/include/lldb/Breakpoint/StopCondition.h
M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/API/SBBreakpoint.cpp
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/Options.td
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/functionalities/breakpoint/breakpoint_conditions/TestBreakpointConditions.py
Log Message:
-----------
[lldb] Speed up evaluating breakpoint conditions by using DIL (#224740)
The goal of this patch is to speed up the evaluation of breakpoint
conditions. Similar to how UserExpression is used to evaluate the
condition expression, DIL lexes and parses the expression once, and then
only evaluates the AST tree on every breakpoint location hit. If DIL
fails at any step, the evaluation falls back to UserExpression, and DIL
doesn't make any new attempts on subsequent breakpoint hits. The
breakpoint default evaluation mode (DIL, UserExpression or DWIM) can be
changed by `target.breakpoints-condition-mode` setting. The mode can
also be changed separately for a specific breakpoint via command line
option `-Z (--condition-mode)` or by SB API
`SBBreakpoint::SetConditionMode`.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list