hanchenye-llvm-project/lld/lib/Core
Rui Ueyama 23487e878b Make dead-striping to handle reverse edges.
Layout-before edges are no longer used for layout, but they are
still there for dead-stripping. If we would just remove them
from code, LLD would wrongly remove live atoms that were
referenced by layout-befores.

This patch fixes the issue. Before dead-stripping, it scans all
atoms to construct a reverse map for layout-after edges. Dead-
stripping pass uses the map to traverse the graph.

Differential Revision: http://reviews.llvm.org/D3986

llvm-svn: 210057
2014-06-03 01:59:02 +00:00
..
CMakeLists.txt
DefinedAtom.cpp [core] support .gnu.linkonce sections 2014-04-01 03:49:55 +00:00
Error.cpp There is no std::errc:success, remove the llvm one. 2014-05-31 03:20:37 +00:00
File.cpp
InputGraph.cpp Use error_code() instead of error_code::succes() 2014-05-31 01:22:21 +00:00
LinkingContext.cpp Move alias symbols from ELFLinkingContext to LinkingContext. 2014-05-22 21:37:56 +00:00
PassManager.cpp Use error_code() instead of error_code::succes() 2014-05-31 01:22:21 +00:00
Resolver.cpp Make dead-striping to handle reverse edges. 2014-06-03 01:59:02 +00:00
SymbolTable.cpp [mach-o] Support parsing of non-lazy-pointer sections 2014-05-28 01:16:35 +00:00
TODO.txt