[PATCH] D86142: [LLD] Search archives for non-tentative defintions.

Sean Fertile via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 25 12:40:21 PDT 2020


sfertile added inline comments.


================
Comment at: lld/test/ELF/common-archive-lookup.s:1
+# REQUIRES: ppc
+
----------------
MaskRay wrote:
> We usually use x86 for generic features (sorry). I am fine with ppc but this is probably worth a comment that some FORTRAN libraries on ppc require this behavior (i.e. if you no longer require this behavior and if we need some symbol table refactoring where this behavior gets in the way, we should have the right to revisit the decision. SHN_COMMON will get more and more obsoleted and hope we don't need this particular behavior in the future ;-) )
> 
> Gold behaves like LLD and internally we have much Fortran code (x86/ppc) which does not tickle this property:)
> 
> https://sourceware.org/pipermail/binutils/2020-August/112926.html
> 
> > COMMON is also one of those dark corners with multiple implementations, so I'm not at all surprised to learn that some linkers handle it differently. Most code doesn't tickle those cases, so these differences generally go unnoticed.
> 
> In any case I have to do a large run internally because we still use -fcommon  :)
> In any case I have to do a large run internally because we still use -fcommon :)
Sorry for the churn.  On the bright side if this change impacts any internal projects you can use it to help convince them to stop using -fcommon :).

> this is probably worth a comment that some FORTRAN libraries on ppc require this behavior.
The motivating example is ESSL on PPC, but this isn't a PPC distinct problem. From what our fortran compiler devs tell me, its not unusual for heavy fortran users to have one or two ancient libraries they depend on that were written in pre-F90, and no one touches them to port to newer language dialects.  



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D86142



More information about the llvm-commits mailing list