[PATCH] D68352: [lld] Handle sections without chunks during PDB generation

Alexandre Ganea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 7 08:06:41 PDT 2019


aganea added a subscriber: mstorsjo.
aganea added a comment.

Your explanation makes sense, a hint-less EXE would bind to a very specific set of runtime libraries, which never happens on Windows, but make sense in case of embedded development.
Indeed the hint table does not need null termination. I would assume the following in `lld//COFF/Writer.cpp` would solve your issue:

  if (!idata.hints.empty())
    add(".idata$6", idata.hints);

Remains to see how the modern (Windows 10) NT loader handles non-existing hint tables.

Could you possibly add a test please, with a mention explaining your use-case on Xbox? You will need to create a ordinal-only library in the test, then try linking a "hello world" with that library. Binary are best avoided in the tests (being able to reproduce the data for the test is another good thing).
Ensure all tests pass afterwards - `ninja check-lld` should do it in a MINGW32 shell (or in a regular cmd.exe if you have the GnuWin32 tools installed and in the %PATH%).


Repository:
  rLLD LLVM Linker

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D68352/new/

https://reviews.llvm.org/D68352





More information about the llvm-commits mailing list