llvm/tools/dsymutil
Frederic Riss d0d92e7d30 [dsymutil] Add minimal code to emit DIE trees.
This commit adds code to emit DIE trees that have been pruned from the
parts that haven't been marked as kept in the previous pass.

It works by 'cloning' the input DIE tree (as read by libDebugInfoDwarf)
into a tree of DIE objects. Cloning the DIEs means essentially cloning
their attributes. The code in this commit does only handle scalar and
block attributes (scalar because they are trivial, blocks because they
can't be easily replaced by a scalr placeholder), all the other ones
are replaced by placeholder zero values and will be handled in
further commits.

The added tests mostly check that the DIE tree has the correct layout and
also verify that a few chosen scalar and block attributes correctly make
their way into the output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231300 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-04 22:07:44 +00:00
..
BinaryHolder.cpp [dsymutil] Implement the BinaryHolder object and gain archive support. 2015-01-05 21:29:28 +00:00
BinaryHolder.h [dsymutil] Implement the BinaryHolder object and gain archive support. 2015-01-05 21:29:28 +00:00
CMakeLists.txt [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00
DebugMap.cpp [dsymutil] Add DebugMapObject::lookupObjectAddress() 2015-02-13 23:18:16 +00:00
DebugMap.h [dsymutil] Make trivial accessor const. 2015-02-28 00:28:56 +00:00
dsymutil.cpp [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00
dsymutil.h [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00
DwarfLinker.cpp [dsymutil] Add minimal code to emit DIE trees. 2015-03-04 22:07:44 +00:00
LLVMBuild.txt [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00
MachODebugMapParser.cpp [dsymutil] clang-format a file 2015-02-28 00:29:05 +00:00
Makefile [dsymutil] Add the DwarfStreamer class. 2015-02-28 00:29:11 +00:00