[PATCH] D54747: Discard debuginfo for object files empty after GC

Rui Ueyama via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 25 11:36:18 PDT 2019


ruiu added inline comments.


================
Comment at: lld/ELF/MarkLive.cpp:190
 
+template <class ELFT> static void setSectionLive(InputSectionBase *Sec) {
+  Sec->Live = true;
----------------
Since this file is MarkLive, markSection is perhaps a better name.


================
Comment at: lld/ELF/MarkLive.cpp:192
+  Sec->Live = true;
+  if (Sec->kind() != SectionBase::Kind::Regular &&
+      Sec->kind() != SectionBase::Kind::Merge)
----------------
rocallahan wrote:
> MaskRay wrote:
> > This check can be changed to `!isa<InputSection> && !isa<MergeInputSection>`. But do you just want to exclude `EhInputSection`?
> Shouldn't I also be excluding `SyntheticSection`?
This needs a comment.

Do you have to visit each file during the mark phase? Looks like you can mark only sections first, and after marking all sections, you can scan all sections to mark files. Looks like they can be two separate stages.


Repository:
  rLLD LLVM Linker

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

https://reviews.llvm.org/D54747





More information about the llvm-commits mailing list