Revert r303225 "Garbage collect dllimported symbols."
authorHans Wennborg <hans@hanshq.net>
Wed, 17 May 2017 16:22:03 +0000 (16:22 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 17 May 2017 16:22:03 +0000 (16:22 +0000)
commite67c5f6b52d328bfe08d2830467badaca21611fa
treeddeaf08653bb96d2b15a94f7d564e8128cad3d8f
parentba60e3dd6134412c62a0963f882b512f25945f88
Revert r303225 "Garbage collect dllimported symbols."

and follow-up r303226 "Fix Windows buildbots."

This broke the sanitizer-windows buildbot.

> Previously, the garbage collector (enabled by default or by explicitly
> passing /opt:ref) did not kill dllimported symbols. As a result,
> dllimported symbols could be added to resulting executables' dllimport
> list even if no one was actually using them.
>
> This patch implements dllexported symbol garbage collection. Just like
> COMDAT sections, dllimported symbols now have Live bits to manage their
> liveness, and MarkLive marks reachable dllimported symbols.
>
> Fixes https://bugs.llvm.org/show_bug.cgi?id=32950
>
> Reviewers: pcc
>
> Subscribers: llvm-commits
>
> Differential Revision: https://reviews.llvm.org/D33264

llvm-svn: 303270
lld/COFF/InputFiles.cpp
lld/COFF/MarkLive.cpp
lld/COFF/Symbols.cpp
lld/COFF/Symbols.h
lld/COFF/Writer.cpp
lld/test/COFF/Inputs/import.yaml
lld/test/COFF/dllimport-gc.test [deleted file]