[all-commits] [llvm/llvm-project] 1c8bb6: [LLD] [MinGW] Print errors/warnings in lld-link wi...

Martin Storsjö via All-commits all-commits at lists.llvm.org
Sat Jun 19 12:32:54 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1c8bb625b716b647206bcf5f51ac1c356ec2985e
      https://github.com/llvm/llvm-project/commit/1c8bb625b716b647206bcf5f51ac1c356ec2985e
  Author: Martin Storsjö <martin at martin.st>
  Date:   2021-06-19 (Sat, 19 Jun 2021)

  Changed paths:
    M lld/MinGW/Driver.cpp
    M lld/test/MinGW/driver.test

  Log Message:
  -----------
  [LLD] [MinGW] Print errors/warnings in lld-link with a "ld.lld" prefix

Pass the original argv[0] to the coff linker, as the coff linker uses
the basename of argv[0] as the log prefix.

This makes error messages to be printed with a "ld.lld:" prefix
instead of "lld-link:". The current "lld-link:" prefix can be confusing
to users, as they're invoking the MinGW linker (and might not even have
a lld-link executable).

Keep the first argument as lld-link when printing the command line, to
make it an actually reproducible standalone command.

Differential Revision: https://reviews.llvm.org/D104526


  Commit: e1adf90826a57b674eee79b071fb46c1f5683cd0
      https://github.com/llvm/llvm-project/commit/e1adf90826a57b674eee79b071fb46c1f5683cd0
  Author: Martin Storsjö <martin at martin.st>
  Date:   2021-06-19 (Sat, 19 Jun 2021)

  Changed paths:
    M lld/COFF/Driver.cpp

  Log Message:
  -----------
  [LLD] [COFF] Avoid doing repeated fuzzy symbol lookup for each iteration. NFC.

This is run every time around in the main linker loop. Once a match
has been found, stop trying to rematch such a symbol.

Not sure if this has any actual measurable performance impact though
(SymbolTable::findMangle() iterates over the whole symbol table for
each call and does fuzzy matching on top of that) but this makes the
code more reassuring to read at least. (This is in practice run for def
files listing undecorated stdcall functions to be exported.)

Differential Revision: https://reviews.llvm.org/D104529


Compare: https://github.com/llvm/llvm-project/compare/0f558db742fa...e1adf90826a5


More information about the All-commits mailing list