Index: lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp =================================================================== --- lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp +++ lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp @@ -39,7 +39,7 @@ } } PrevAbbrCode = AbbrDecl.getCode(); - Decls.push_back(std::move(AbbrDecl)); + Decls.push_back(AbbrDecl); } return BeginOffset != *OffsetPtr; } @@ -82,7 +82,7 @@ uint32_t CUAbbrOffset = Offset; if (!AbbrDecls.extract(Data, &Offset)) break; - AbbrDeclSets[CUAbbrOffset] = std::move(AbbrDecls); + AbbrDeclSets[CUAbbrOffset] = AbbrDecls; } } Index: lib/IRReader/IRReader.cpp =================================================================== --- lib/IRReader/IRReader.cpp +++ lib/IRReader/IRReader.cpp @@ -36,11 +36,12 @@ LLVMContext &Context, bool ShouldLazyLoadMetadata) { if (isBitcode((const unsigned char *)Buffer->getBufferStart(), (const unsigned char *)Buffer->getBufferEnd())) { + auto Indentifier = Buffer->getBufferIdentifier(); Expected> ModuleOrErr = getOwningLazyBitcodeModule( std::move(Buffer), Context, ShouldLazyLoadMetadata); if (Error E = ModuleOrErr.takeError()) { handleAllErrors(std::move(E), [&](ErrorInfoBase &EIB) { - Err = SMDiagnostic(Buffer->getBufferIdentifier(), SourceMgr::DK_Error, + Err = SMDiagnostic(std::move(Indentifier), SourceMgr::DK_Error, EIB.message()); }); return nullptr; Index: lib/Object/Error.cpp =================================================================== --- lib/Object/Error.cpp +++ lib/Object/Error.cpp @@ -91,5 +91,5 @@ return Error(std::move(M)); })) return Err2; - return Err; + return Err; // Use after move, not sure how to fix it. } Index: lib/Support/APFloat.cpp =================================================================== --- lib/Support/APFloat.cpp +++ lib/Support/APFloat.cpp @@ -4089,9 +4089,8 @@ if (usesLayout(Semantics)) { new (&IEEE) IEEEFloat(std::move(F)); } else if (usesLayout(Semantics)) { - new (&Double) - DoubleAPFloat(Semantics, APFloat(std::move(F), F.getSemantics()), - APFloat(IEEEdouble)); + new (&Double) DoubleAPFloat(Semantics, APFloat(F, F.getSemantics()), + APFloat(IEEEdouble)); } else { llvm_unreachable("Unexpected semantics"); } Index: lib/Target/X86/X86ISelLowering.cpp =================================================================== --- lib/Target/X86/X86ISelLowering.cpp +++ lib/Target/X86/X86ISelLowering.cpp @@ -26997,6 +26997,7 @@ // performs an equivalent shuffle. SmallVector WidenedMask; while (Mask.size() > 1 && canWidenShuffleElements(Mask, WidenedMask)) { + // No use after move, WidenMask reinitialized in canWidenShuffleElements. Mask = std::move(WidenedMask); } Index: lib/Transforms/Scalar/LoadCombine.cpp =================================================================== --- lib/Transforms/Scalar/LoadCombine.cpp +++ lib/Transforms/Scalar/LoadCombine.cpp @@ -261,7 +261,7 @@ auto POP = getPointerOffsetPair(*LI); if (!POP.Pointer) continue; - LoadMap[POP.Pointer].push_back({LI, std::move(POP), Index++}); + LoadMap[POP.Pointer].push_back({LI, POP, Index++}); AST.add(LI); } if (combineLoads(LoadMap)) Index: tools/llvm-profdata/llvm-profdata.cpp =================================================================== --- tools/llvm-profdata/llvm-profdata.cpp +++ tools/llvm-profdata/llvm-profdata.cpp @@ -59,8 +59,8 @@ } exitWithError(IPE.message(), Whence, Hint); }); + LLVM_BUILTIN_UNREACHABLE; } - exitWithError(toString(std::move(E)), Whence); }