[dsymutil] Add DIE selection algorithm.
authorFrederic Riss <friss@apple.com>
Fri, 13 Feb 2015 23:18:34 +0000 (23:18 +0000)
committerFrederic Riss <friss@apple.com>
Fri, 13 Feb 2015 23:18:34 +0000 (23:18 +0000)
commit2e2ed16a3b86f8284c3d4389e4a0fe05b37f221b
tree46b4c053d4c427d54c53d6569be361a988f3bcf7
parent443abd79059ec34d7a19c563b2fdede4c1be8284
[dsymutil] Add DIE selection algorithm.

With this commit, llvm-dsymutil learns how to choose which DIEs
it will link in the final output and which ones it won't. This
is based on the 'valid relocation' information that has been
built in the previous commits.

The test only tests that we choose the right 'root DIEs'. The
selection algorithm (and especially the part that walk the
dependencies of a root DIE) lacks a bit test coverage. This
will be much easier to cover when we output actual Dwarf and
thus can use llvm-dwarfdump to verify the structure of the
emitted DIE trees. I'll add more tests then.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229183 91177308-0d34-0410-b5e6-96231b3b80d8
test/tools/dsymutil/basic-linking.test
tools/dsymutil/DwarfLinker.cpp