Page MenuHomePhabricator

DWZ 02/06: Refactor DWARFUnit::ExtractDIEsScoped
Changes PlannedPublic

Authored by jankratochvil on Jul 29 2018, 1:25 PM.

Details

Reviewers
clayborg
Summary

Change the method of construction from:

DWARFUnit::ScopedExtractDIEs DWARFUnit::ExtractDIEsScoped()

to:

DWARFUnit::ScopedExtractDIEs::ScopedExtractDIEs(DWARFUnit *cu)

So that a later patch can implement:

std::unordered_map<const DWARFUnit *, DWARFUnit::ScopedExtractDIEs>
    .emplace(DWARFUnit *,DWARFUnit *)

so that if the map element already exists DWARFUnit::ScopedExtractDIEs is not temporarily constructed. If the caller called DWARFUnit::ExtractDIEsScoped() as an emplace parameter it would get constructed already in the caller.
Patch also contains what I considered as a general cleanup.

All DWZ patches are also applied in: git clone -b dwz git://git.jankratochvil.net/lldb

Diff Detail