Low-Latency Instrumentation on Darwin
On macOS, modern debuggers incur significant context-switching overhead during conditional breakpoint evaluation. By utilizing dynamic instrumentation and code injection, the target process can evaluate stop conditions locally, bypassing this bottleneck to achieve near-native execution speeds.
Faster breakpoints enable new features and functionality within the debugger that were previously not possible, or at least not performat enough to be useful in practice.