[PATCH] D49742: [DebugInfo/DWARF] [2/4] De-segregate type units and compile units. NFC

Paul Robinson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 30 10:58:02 PDT 2018


probinson added inline comments.


================
Comment at: llvm/lib/DebugInfo/DWARF/DWARFContext.cpp:838
+  DObj->forEachTypesDWOSections(
+      [&](const DWARFSection &S) { DWOTUs.parseDWO(*this, S, DW_SECT_TYPES); });
 }
----------------
aprantl wrote:
> Where did the emplace_back go?
It's gone, because DWOTUs is no longer a deque of DWARFUnitSection, it is simply a single DWARFUnitSection.


================
Comment at: llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp:59
                const DWARFSection *AOS, const DWARFSection &LS, bool LE,
                bool IsDWO, bool Lazy, DWARFSectionKind SectionKind) {
   DWARFDataExtractor Data(Obj, Section, LE, 0);
----------------
aprantl wrote:
> why is this no longer necessary?
More than unnecessary, it gets in the way.  The parse method is called once per object-file section, and a single DWARFUnitSection now contains info from multiple sections.  So, we have to be able to call it multiple times.
It's the caller's responsibility to avoid re-parsing now.  Hmm which ought to be documented in a comment.


Repository:
  rL LLVM

https://reviews.llvm.org/D49742





More information about the llvm-commits mailing list