hanchenye-llvm-project/lldb/unittests
Pavel Labath 03db32b303 PostfixExpression: Introduce InitialValueNode
Summary:
This node represents can be used to refer to the initial value, which is
sometimes pushed onto the DWARF stack as the "input" to the DWARF
expression. The typical use case (and the reason why I'm introducing it)
is that the "Canonical Frame Address" is passed this way to the DWARF
expressions computing the values of registers during frame unwind.

The nodes are converted into dwarf by keeping track of DWARF stack depth
an any given point, and then copying the initial value from the bottom
of the stack via the DW_OP_pick opcode. This could be made more
efficient for simple expressions, but here I chose to start with the
most general implementation possible.

Reviewers: amccarth, clayborg, aleksandr.urakov

Subscribers: aprantl, jasonmolenda, lldb-commits, markmentovai

Differential Revision: https://reviews.llvm.org/D61183

llvm-svn: 359560
2019-04-30 13:33:18 +00:00
..
Breakpoint Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Core [LLDB] - Update the test cases after yaml2obj change. 2019-04-03 15:28:35 +00:00
Disassembler When disassembling Aarch64 target and vendor Apple, set the cpu to 2019-03-07 03:16:45 +00:00
Editline [EditLineTests] Call setenv() before editline is initialized. 2019-04-24 18:39:39 +00:00
Expression DWARFExpression: Fix implementation of DW_OP_pick 2019-04-29 10:55:22 +00:00
Host Clear the output string passed to GetHostName() 2019-04-17 03:13:06 +00:00
Interpreter [CMake] Only the Python scirpt interpreter should link against Python. 2019-04-01 22:03:04 +00:00
Language [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
ObjectFile Breakpad: Match the new UUID algorithm in minidumps 2019-04-16 14:51:47 +00:00
Platform Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Process Minidump: yamlify module-related unit tests 2019-04-21 13:12:40 +00:00
ScriptInterpreter [CMake] Only the Python scirpt interpreter should link against Python. 2019-04-01 22:03:04 +00:00
Signals Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Symbol PostfixExpression: Introduce InitialValueNode 2019-04-30 13:33:18 +00:00
SymbolFile Remove obsoleted NativePDB tests 2019-04-29 14:00:58 +00:00
Target Refactor user/group name resolving code 2019-03-04 18:48:00 +00:00
TestingSupport Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
UnwindAssembly Use std::make_shared in LLDB (NFC) 2019-02-11 23:13:08 +00:00
Utility Allow direct comparison of ConstString against StringRef 2019-04-26 07:21:36 +00:00
debugserver [NFC] Remove ASCII lines from comments 2019-04-10 20:48:55 +00:00
tools [lldb-mi] Check raw pointers before passing them to std::string ctor/assignment 2019-02-25 16:40:11 +00:00
CMakeLists.txt [CMake] Only test debugserver if platform can use debugserver 2019-01-18 00:05:25 +00:00
gtest_common.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00