commit | ac9b2d98f059a09846d89fe2457f22b10c93b79a | [log] [tgz] |
---|---|---|
author | Martin Storsjo <martin@martin.st> | Fri Oct 05 19:43:24 2018 +0000 |
committer | Martin Storsjo <martin@martin.st> | Fri Oct 05 19:43:24 2018 +0000 |
tree | 2d23d5240e32b16fb92e843bb27c6815a14d3adf | |
parent | fe7c54fda5db24dcf84cb6d5aee62d7f76354e24 [diff] |
[COFF] Do MinGW specific entry/subsystem inference ld.bfd doesn't do any inference of subsystem; unless the windows subsystem is specified, the console subsystem is used. For the console subsystem, the entry point is called mainCRTStartup, regardless of whether the the user code entry point is main or wmain. The same goes for the windows subsystem, where the entry point always is WinMainCRTStartup, for both WinMain and wWinMain in user code. One detail that we don't emulate, is that if the inferred entry point is undefined, ld.bfd silently just sets the entry point to the start of the image. And if an explicit entry point is set, but it is undefined, the link still succeeds but the linker warns about the entry point not being found. Differential Revision: https://reviews.llvm.org/D52931 git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@343879 91177308-0d34-0410-b5e6-96231b3b80d8
This directory and its subdirectories contain source code for the LLVM Linker, a modular cross platform linker which is built as part of the LLVM compiler infrastructure project.
lld is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.
In order to make sure various developers can evaluate patches over the same tests, we create a collection of self contained programs.
It is hosted at https://s3-us-west-2.amazonaws.com/linker-tests/lld-speed-test.tar.xz
The current sha256 is 10eec685463d5a8bbf08d77f4ca96282161d396c65bd97dc99dbde644a31610f.