[all-commits] [llvm/llvm-project] 96c733: [lldb] Add support for PC-less scripted frames (#1...
Med Ismail Bennani via All-commits
all-commits at lists.llvm.org
Fri Dec 5 15:58:15 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 96c733e0dbc1d1426ec2ea23898e23ff9851fde0
https://github.com/llvm/llvm-project/commit/96c733e0dbc1d1426ec2ea23898e23ff9851fde0
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/include/lldb/Target/StackID.h
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.h
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
A lldb/test/API/functionalities/scripted_frame_provider/python_helper.py
M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
M lldb/test/API/functionalities/scripted_process/dummy_scripted_process.py
Log Message:
-----------
[lldb] Add support for PC-less scripted frames (#170805)
Scripted frames that materialize Python functions or other non-native
code are PC-less by design, meaning they don't have valid program
counter values. Previously, these frames would display invalid addresses
(`0xffffffffffffffff`) in backtrace output.
This patch updates `FormatEntity` to detect and suppress invalid address
display for PC-less frames, adds fallback to frame methods when symbol
context is unavailable, and modifies `StackFrame::GetSymbolContext` to
skip PC-based symbol resolution for invalid addresses.
The changes enable PC-less frames to display cleanly with proper
function names, file paths, and line numbers, and allow for source
display of foreign sources (like Python). Includes comprehensive test
coverage demonstrating frames pointing to Python source files.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
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