[PATCH] D86762: [ELF] Add documentation for --warn-backrefs: a layering check tool

Peter Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 1 01:01:52 PDT 2020


psmith added a comment.

I had a look in Levine's Linkers and Loaders book to see if I could find any source for back-references, all I could find was in 6.4 "Not all linkers do this; many just make a single sequential pass over the directory and miss any backwards depedencies from a file to another file earlier in the library. Tools like tsort and lorder can minimize the difficulty of using single-pass linkers but it's not uncommon for programmers to explicitly list the same library several times on the linker command line to force multiple passes and thus finally resolve all symbols."

Perhaps "Single pass linker's such as GNU ld" instead of traditional linkers.

As another data point. Arm's proprietary linker (over 20 years old now) follows the LLD conventions as well, although that isn't a traditional Unix linker. My understanding is that being single pass allowed the memory used for an archive to be discarded immediately after finishing processing. This is not a concern today.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D86762



More information about the llvm-commits mailing list