[all-commits] [llvm/llvm-project] 912e82: [LLD][COFF] Process all live import symbols in Map...

Jacek Caban via All-commits all-commits at lists.llvm.org
Thu Sep 19 04:20:22 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 912e821ab3d415dc8421f53738ebabcc7f1dac2d
      https://github.com/llvm/llvm-project/commit/912e821ab3d415dc8421f53738ebabcc7f1dac2d
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-19 (Thu, 19 Sep 2024)

  Changed paths:
    M lld/COFF/MapFile.cpp
    A lld/test/COFF/export-imp.test

  Log Message:
  -----------
  [LLD][COFF] Process all live import symbols in MapFile's getSymbols() (#109117)

The current logic assumes that the import file is pulled by object
files, and the loop for import files only needs to handle cases where
the `__imp_` symbol is implicitly pulled by an import thunk. This is
fragile, as the symbol may also be pulled through other means, such as
the -export argument in tests. Additionally, this logic is insufficient
for ARM64EC, which exposes multiple symbols through an import file, and
referencing any one of them causes all of them to be defined.
    
With this change, import symbols are added to `syms` more often, but we
ensure that output symbols remain unique later in the process



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list