[all-commits] [llvm/llvm-project] 9e08e9: [ELF] Allow STV_PROTECTED shared definition to set...

Fangrui Song via All-commits all-commits at lists.llvm.org
Sat Feb 5 01:11:29 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9e08e9298059651e4f42eb608c3de9d4ad8004b2
      https://github.com/llvm/llvm-project/commit/9e08e9298059651e4f42eb608c3de9d4ad8004b2
  Author: Fangrui Song <i at maskray.me>
  Date:   2022-02-05 (Sat, 05 Feb 2022)

  Changed paths:
    M lld/ELF/LTO.cpp
    M lld/ELF/Symbols.h
    M lld/test/ELF/lto/unnamed-addr-lib.ll

  Log Message:
  -----------
  [ELF] Allow STV_PROTECTED shared definition to set exportDynamic

A STV_PROTECTED shared definition does not set exportDynamic of a defined
symbol. This is on the basis that a protected definition cannot be preempted so
the export is unnecessary. However, the condition is imperfect because we don't
know whether the shared object was built with a symbolic option. Since dropping
the condition simplifies code and matches GNU ld, let's do it.




More information about the All-commits mailing list