jankratochvil created this revision. jankratochvil added a reviewer: clayborg. Herald added a subscriber: JDevlieghere.
https://reviews.llvm.org/rL145086 introduced `m_die_array.shrink_to_fit()` implemented by `exact_size_die_array.swap`, it was before LLVM became written in C++11. That is fine to use `shrink_to_fit()` now, right? Although I see no real performance gain by a simple `time` test. https://reviews.llvm.org/D47492 Files: source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp Index: source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp =================================================================== --- source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp +++ source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp @@ -180,15 +180,7 @@ m_first_die = m_die_array.front(); } - // Since std::vector objects will double their size, we really need to make a - // new array with the perfect size so we don't end up wasting space. So here - // we copy and swap to make sure we don't have any extra memory taken up. - - if (m_die_array.size() < m_die_array.capacity()) { - DWARFDebugInfoEntry::collection exact_size_die_array(m_die_array.begin(), - m_die_array.end()); - exact_size_die_array.swap(m_die_array); - } + m_die_array.shrink_to_fit(); ExtractDIEsEndCheck(offset);
Index: source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp =================================================================== --- source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp +++ source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp @@ -180,15 +180,7 @@ m_first_die = m_die_array.front(); } - // Since std::vector objects will double their size, we really need to make a - // new array with the perfect size so we don't end up wasting space. So here - // we copy and swap to make sure we don't have any extra memory taken up. - - if (m_die_array.size() < m_die_array.capacity()) { - DWARFDebugInfoEntry::collection exact_size_die_array(m_die_array.begin(), - m_die_array.end()); - exact_size_die_array.swap(m_die_array); - } + m_die_array.shrink_to_fit(); ExtractDIEsEndCheck(offset);
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits