commit | 7a7ef108df847c1d53af0e05732daae547b9ead6 | [log] [tgz] |
---|---|---|
author | Martin Storsjö <martin@martin.st> | Tue Nov 21 12:40:11 2023 +0200 |
committer | Copybara-Service <copybara-worker@google.com> | Tue Nov 21 02:45:44 2023 -0800 |
tree | 1653d1a820617e17c075ec5854dec6cd7afdaf5f | |
parent | cacd19c6429acc0e0b899443e02e25fcfe453706 [diff] |
[LLD] [COFF] Add tests to observe details about LTO and __imp_ prefixes. NFC. (#72764) The commit 3ab6209a3f93bdbeec8e9b9fcc00a9a4980915ff had the undesired effect of retaining every `__imp_` symbol, even if it isn't referenced in any way. Add a testcase to observe this behaviour, to serve as a reference point if this behaviour were to be improved later. Port the testcase from b963c0b658cc54b370832df4f5a3d63fd69da334 from the llvm/LTO testsuite into LLD as a preparation for changing that fix; the moved testcase has a comment for one case which doesn't work currently. The testcase is ported mostly as is, but with symbol mangling simplified, rewriting function names from MSVC C++ mangling to plain C, and unnecessary debug info is removed. Add a case of a dllimported data symbol, in addition to the existing call of a dllimported function. Also extend the testcase to test combinations of both regular object files and LTO objects. Leave out one combination which currently fails, with a comment. GitOrigin-RevId: 6a323e7ec3478e633ba85ce6c274f02d0b31299b
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
.