[all-commits] [llvm/llvm-project] 9fe455: [lldb] Add constant value mode for RegisterLocatio...
Felipe de Azevedo Piovezan via All-commits
all-commits at lists.llvm.org
Wed Jul 31 10:25:53 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
https://github.com/llvm/llvm-project/commit/9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2024-07-31 (Wed, 31 Jul 2024)
Changed paths:
M lldb/include/lldb/Symbol/UnwindPlan.h
M lldb/source/Symbol/UnwindPlan.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb] Add constant value mode for RegisterLocation in UnwindPlans (#100624)
This is useful for language runtimes that compute register values by
inspecting the state of the currently running process. Currently, there
are no mechanisms enabling these runtimes to set register values to
arbitrary values.
The alternative considered would involve creating a dwarf expression
that produces an arbitrary integer (e.g. using OP_constu). However, the
current data structure for Rows is such that they do not own any memory
associated with dwarf expressions, which implies any such expression
would need to have static storage and therefore could not contain a
runtime value.
Adding a new rule for constants leads to a simpler implementation. It's
also worth noting that this does not make the "Location" union any
bigger, since it already contains a pointer+size pair.
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