[ELF] Remove {ELF,}GNULinkerScript.
authorRui Ueyama <ruiu@google.com>
Wed, 7 Jan 2015 01:13:08 +0000 (01:13 +0000)
committerRui Ueyama <ruiu@google.com>
Wed, 7 Jan 2015 01:13:08 +0000 (01:13 +0000)
commit5a25fd596238556a447d3e004624dafa0dfd59a4
tree870c26ad68bcb286ab72726c6e92feecfb5568bf
parent5310c1e9549c18af257eaf2c13782e29419dc28d
[ELF] Remove {ELF,}GNULinkerScript.

Instead of representing a linker script file as an "InputElement",
parse and evaluate scripts in the driver as we see them.

Linker scripts are not regular input files (regular file is one of
object, archive, or shared library file). They are more like
extended command line options. Linker script handling was needlessly
complicated because of that inappropriate abstraction (besides
excessive class hierarchy -- there is no such thing like ELF linker
script but we had two classes there for some reason.)

LinkerScript was one of a few remaining InputElement subclasses
that can be expanded to multiple files. With this patch, we are one
step closer to retire InputElement.

http://reviews.llvm.org/D6648

llvm-svn: 225330
lld/include/lld/Driver/GnuLdInputGraph.h
lld/lib/Driver/GnuLdDriver.cpp
lld/lib/Driver/GnuLdInputGraph.cpp