From f5397a23bac5d5208089939671ffa48122f607d0 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Tue, 7 May 2019 15:45:00 +0000 Subject: [PATCH] Avoid use-after-move warnings by using swap instead. NFCI. Swap should be as quick in these cases, and leaves the original variables in a known (empty) state. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360164 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Bitcode/Writer/ValueEnumerator.cpp | 3 ++- lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/Bitcode/Writer/ValueEnumerator.cpp b/lib/Bitcode/Writer/ValueEnumerator.cpp index c735efab9c1..72d7000fad9 100644 --- a/lib/Bitcode/Writer/ValueEnumerator.cpp +++ b/lib/Bitcode/Writer/ValueEnumerator.cpp @@ -749,7 +749,8 @@ void ValueEnumerator::organizeMetadata() { // Rebuild MDs, index the metadata ranges for each function in FunctionMDs, // and fix up MetadataMap. - std::vector OldMDs = std::move(MDs); + std::vector OldMDs; + MDs.swap(OldMDs); MDs.reserve(OldMDs.size()); for (unsigned I = 0, E = Order.size(); I != E && !Order[I].F; ++I) { auto *MD = Order[I].get(OldMDs); diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 489bcb4e859..ea75df8e47d 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -8858,8 +8858,11 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const { if (CLI.IsPostTypeLegalization) { // If we are lowering a libcall after legalization, split the return type. - SmallVector OldRetTys = std::move(RetTys); - SmallVector OldOffsets = std::move(Offsets); + SmallVector OldRetTys; + SmallVector OldOffsets; + RetTys.swap(OldRetTys); + Offsets.swap(OldOffsets); + for (size_t i = 0, e = OldRetTys.size(); i != e; ++i) { EVT RetVT = OldRetTys[i]; uint64_t Offset = OldOffsets[i]; -- 2.50.1