llvm-project/lld/lib/Driver
Rui Ueyama 8bae8189b2 [PECOFF] Fix exported symbol in the import library
There are two ways to specify a symbol to be exported in the module
definition file.

1) EXPORT <external name> = <symbol>
2) EXPORT <symbol>

In (1), you give both external name and internal name. In that case,
the linker tries to find a symbol using the internal name, and write
that address to the export table with the external name. Thus, from
the outer world, the symbol seems to be exported as the external name.

In (2), internal name is basically the same as the external name
with an exception: if you give an undecorated symbol to the EXPORT
directive, and if the linker finds a decorated symbol, the external
name for the symbol will become the decorated symbol.

LLD didn't implement that exception correctly. This patch fixes that.

llvm-svn: 220333
2014-10-21 21:41:28 +00:00
..
CMakeLists.txt [CMake] lld: Introduce ${cmake_2_8_12_INTERFACE} onto each target_link_libraries. [PR20254] 2014-10-17 00:37:49 +00:00
CoreDriver.cpp Sort include files according to convention. 2014-10-18 05:33:55 +00:00
CoreOptions.td This is my Driver refactoring patch. 2013-04-04 18:59:24 +00:00
DarwinInputGraph.cpp Subclass InputGraph to get darwin linker library semantics 2014-10-21 21:14:11 +00:00
DarwinLdDriver.cpp Subclass InputGraph to get darwin linker library semantics 2014-10-21 21:14:11 +00:00
DarwinLdOptions.td [mach-o] Add support for upward linking 2014-10-16 19:31:28 +00:00
Driver.cpp Sort include files according to convention. 2014-10-18 05:33:55 +00:00
GnuLdDriver.cpp [ELF] Implement demangle. 2014-10-20 05:04:53 +00:00
GnuLdInputGraph.cpp Sort include files according to convention. 2014-10-18 05:33:55 +00:00
GnuLdOptions.td [Gnu] Move certain options to a different group. 2014-10-21 04:02:32 +00:00
Makefile Initial set of Makefiles 2014-06-04 09:54:07 +00:00
TODO.rst [TODO] revisit features TODO in the driver 2014-04-02 05:45:52 +00:00
UniversalDriver.cpp Sort include files according to convention. 2014-10-18 05:33:55 +00:00
UniversalDriverOptions.td Add support to print version. 2014-10-08 03:47:51 +00:00
WinLinkDriver.cpp [PECOFF] Fix exported symbol in the import library 2014-10-21 21:41:28 +00:00
WinLinkInputGraph.cpp Don't import error_code into the lld namespace. 2014-06-12 14:53:47 +00:00
WinLinkModuleDef.cpp [PECOFF] Fix exported symbol in the import library 2014-10-21 21:41:28 +00:00
WinLinkOptions.td [PECOFF] Resolve __delayLoadHelper2 if /delayload is given 2014-10-03 01:14:50 +00:00