diff options
author | Adrian Prantl <aprantl@apple.com> | 2019-09-10 16:17:38 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2019-09-10 16:17:38 +0000 |
commit | 9b23df63ecd9f23bb8877783d30d1a49e895cf7c (patch) | |
tree | e1e9e41f9c70fd6c5ba7c34eb00757305d84649d /lldb/source/Core/Section.cpp | |
parent | 6b877f6aac3d8e569e74953f0310323c2882619c (diff) | |
download | bcm5719-llvm-9b23df63ecd9f23bb8877783d30d1a49e895cf7c.tar.gz bcm5719-llvm-9b23df63ecd9f23bb8877783d30d1a49e895cf7c.zip |
Implement DW_OP_convert
This patch adds basic support for DW_OP_convert[1] for integer
types. Recent versions of LLVM's optimizer may insert this opcode into
DWARF expressions. DW_OP_convert is effectively a type cast operation
that takes a reference to a base type DIE (or zero) and then casts the
value at the top of the DWARF stack to that type. Internally this
works by changing the bit size of the APInt that is used as backing
storage for LLDB's DWARF stack.
I managed to write a unit test for this by implementing a mock YAML
object file / module that takes debug info sections in yaml2obj
format.
[1] Typed DWARF stack. http://www.dwarfstd.org/ShowIssue.php?issue=140425.1
<rdar://problem/48167864>
Differential Revision: https://reviews.llvm.org/D67369
llvm-svn: 371532
Diffstat (limited to 'lldb/source/Core/Section.cpp')
-rw-r--r-- | lldb/source/Core/Section.cpp | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/lldb/source/Core/Section.cpp b/lldb/source/Core/Section.cpp index de017ed3783..7615dc1d65c 100644 --- a/lldb/source/Core/Section.cpp +++ b/lldb/source/Core/Section.cpp @@ -417,10 +417,6 @@ lldb::offset_t Section::GetSectionData(DataExtractor §ion_data) { #pragma mark SectionList -SectionList::SectionList() : m_sections() {} - -SectionList::~SectionList() {} - SectionList &SectionList::operator=(const SectionList &rhs) { if (this != &rhs) m_sections = rhs.m_sections; |