[all-commits] [llvm/llvm-project] 6a323e: [LLD] [COFF] Add tests to observe details about LT...

Martin Storsjö via All-commits all-commits at lists.llvm.org
Tue Nov 21 02:40:24 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6a323e7ec3478e633ba85ce6c274f02d0b31299b
      https://github.com/llvm/llvm-project/commit/6a323e7ec3478e633ba85ce6c274f02d0b31299b
  Author: Martin Storsjö <martin at martin.st>
  Date:   2023-11-21 (Tue, 21 Nov 2023)

  Changed paths:
    A lld/test/COFF/lto-dllimport.ll
    M lld/test/COFF/lto-imp-prefix.ll
    R llvm/test/LTO/X86/Inputs/dllimport.ll
    R llvm/test/LTO/X86/dllimport.ll

  Log Message:
  -----------
  [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.




More information about the All-commits mailing list