[llvm] r327067 - [DebugInfo] Move RangeListEntries instead of copying.
Benjamin Kramer via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 8 13:31:10 PST 2018
Author: d0k
Date: Thu Mar 8 13:31:10 2018
New Revision: 327067
URL: http://llvm.org/viewvc/llvm-project?rev=327067&view=rev
Log:
[DebugInfo] Move RangeListEntries instead of copying.
This is needed for correctness as RangeListEntry is not copy-assignable,
which std::vector might rely on.
Modified:
llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp
Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp?rev=327067&r1=327066&r2=327067&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp (original)
+++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp Thu Mar 8 13:31:10 2018
@@ -98,7 +98,7 @@ Error DWARFDebugRnglists::extract(DWARFD
switch (Encoding) {
case dwarf::DW_RLE_end_of_list:
CurrentRanges.push_back(RangeListEntry{ EntryOffset, Encoding, 0, 0 });
- Ranges.insert(Ranges.end(), CurrentRanges);
+ Ranges.insert(Ranges.end(), std::move(CurrentRanges));
CurrentRanges.clear();
break;
// TODO: Support other encodings.
@@ -147,7 +147,7 @@ Error DWARFDebugRnglists::extract(DWARFD
break;
}
default:
- Ranges.insert(Ranges.end(), CurrentRanges);
+ Ranges.insert(Ranges.end(), std::move(CurrentRanges));
return createError("unknown rnglists encoding 0x%" PRIx32
" at offset 0x%" PRIx32,
uint32_t(Encoding), *OffsetPtr - 1);
More information about the llvm-commits
mailing list