[all-commits] [llvm/llvm-project] 36bce6: Add a scripted way to re-present a stop location (...

jimingham via All-commits all-commits at lists.llvm.org
Thu Oct 9 08:43:45 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 36bce68b97316363085ae3681e8dde33a62fc9b1
      https://github.com/llvm/llvm-project/commit/36bce68b97316363085ae3681e8dde33a62fc9b1
  Author: jimingham <jingham at apple.com>
  Date:   2025-10-09 (Thu, 09 Oct 2025)

  Changed paths:
    M lldb/bindings/python/python-swigsafecast.swig
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/use/python-reference.rst
    M lldb/docs/use/tutorials/creating-custom-breakpoints.md
    M lldb/include/lldb/API/SBBreakpoint.h
    M lldb/include/lldb/API/SBBreakpointLocation.h
    M lldb/include/lldb/API/SBFrame.h
    M lldb/include/lldb/Breakpoint/Breakpoint.h
    M lldb/include/lldb/Breakpoint/BreakpointLocation.h
    M lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h
    M lldb/include/lldb/Breakpoint/BreakpointLocationList.h
    M lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h
    M lldb/include/lldb/Breakpoint/BreakpointSite.h
    M lldb/include/lldb/Breakpoint/StopPointSiteList.h
    M lldb/include/lldb/Breakpoint/StoppointSite.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedBreakpointInterface.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/source/API/SBBreakpoint.cpp
    M lldb/source/Breakpoint/Breakpoint.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/BreakpointLocationCollection.cpp
    M lldb/source/Breakpoint/BreakpointLocationList.cpp
    M lldb/source/Breakpoint/BreakpointResolverScripted.cpp
    M lldb/source/Breakpoint/BreakpointSite.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Target/StopInfo.cpp
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/resolver.py
    A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/Makefile
    A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/TestWasHit.py
    A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/bkpt_resolver.py
    A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/main.c
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp

  Log Message:
  -----------
  Add a scripted way to re-present a stop location (#158128)

This patch adds the notion of "Facade" locations which can be reported
from a ScriptedResolver instead of the actual underlying breakpoint
location for the breakpoint. Also add a "was_hit" method to the scripted
resolver that allows the breakpoint to say which of these "Facade"
locations was hit, and "get_location_description" to provide a
description for the facade locations.

I apologize in advance for the size of the patch. Almost all of what's
here was necessary to (a) make the feature testable and (b) not break
any of the current behavior.

The motivation for this feature is given in the "Providing Facade
Locations" section that I added to the python-reference.rst so I won't
repeat it here.

rdar://152112327



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