diff --git a/llvm/lib/Analysis/AliasAnalysis.cpp b/llvm/lib/Analysis/AliasAnalysis.cpp --- a/llvm/lib/Analysis/AliasAnalysis.cpp +++ b/llvm/lib/Analysis/AliasAnalysis.cpp @@ -73,7 +73,7 @@ static const bool EnableAATrace = false; #endif -AAResults::AAResults(AAResults &&Arg) +AAResults::AAResults(AAResults &&Arg) noexcept : TLI(Arg.TLI), AAs(std::move(Arg.AAs)), AADeps(std::move(Arg.AADeps)) {} AAResults::~AAResults() {} diff --git a/llvm/lib/Analysis/BlockFrequencyInfo.cpp b/llvm/lib/Analysis/BlockFrequencyInfo.cpp --- a/llvm/lib/Analysis/BlockFrequencyInfo.cpp +++ b/llvm/lib/Analysis/BlockFrequencyInfo.cpp @@ -158,10 +158,11 @@ calculate(F, BPI, LI); } -BlockFrequencyInfo::BlockFrequencyInfo(BlockFrequencyInfo &&Arg) +BlockFrequencyInfo::BlockFrequencyInfo(BlockFrequencyInfo &&Arg) noexcept : BFI(std::move(Arg.BFI)) {} -BlockFrequencyInfo &BlockFrequencyInfo::operator=(BlockFrequencyInfo &&RHS) { +BlockFrequencyInfo & +BlockFrequencyInfo::operator=(BlockFrequencyInfo &&RHS) noexcept { releaseMemory(); BFI = std::move(RHS.BFI); return *this; diff --git a/llvm/lib/Analysis/CallGraph.cpp b/llvm/lib/Analysis/CallGraph.cpp --- a/llvm/lib/Analysis/CallGraph.cpp +++ b/llvm/lib/Analysis/CallGraph.cpp @@ -38,7 +38,7 @@ addToCallGraph(&F); } -CallGraph::CallGraph(CallGraph &&Arg) +CallGraph::CallGraph(CallGraph &&Arg) noexcept : M(Arg.M), FunctionMap(std::move(Arg.FunctionMap)), ExternalCallingNode(Arg.ExternalCallingNode), CallsExternalNode(std::move(Arg.CallsExternalNode)) { diff --git a/llvm/lib/Analysis/DDG.cpp b/llvm/lib/Analysis/DDG.cpp --- a/llvm/lib/Analysis/DDG.cpp +++ b/llvm/lib/Analysis/DDG.cpp @@ -117,7 +117,7 @@ "constructing from invalid simple node."); } -SimpleDDGNode::SimpleDDGNode(SimpleDDGNode &&N) +SimpleDDGNode::SimpleDDGNode(SimpleDDGNode &&N) noexcept : DDGNode(std::move(N)), InstList(std::move(N.InstList)) { assert(((getKind() == NodeKind::SingleInstruction && InstList.size() == 1) || (getKind() == NodeKind::MultiInstruction && InstList.size() > 1)) && @@ -141,7 +141,7 @@ "constructing from invalid pi-block node."); } -PiBlockDDGNode::PiBlockDDGNode(PiBlockDDGNode &&N) +PiBlockDDGNode::PiBlockDDGNode(PiBlockDDGNode &&N) noexcept : DDGNode(std::move(N)), NodeList(std::move(N.NodeList)) { assert(getKind() == NodeKind::PiBlock && !NodeList.empty() && "constructing from invalid pi-block node."); diff --git a/llvm/lib/Analysis/GlobalsModRef.cpp b/llvm/lib/Analysis/GlobalsModRef.cpp --- a/llvm/lib/Analysis/GlobalsModRef.cpp +++ b/llvm/lib/Analysis/GlobalsModRef.cpp @@ -110,7 +110,7 @@ if (const auto *ArgPtr = Arg.Info.getPointer()) Info.setPointer(new AlignedMap(*ArgPtr)); } - FunctionInfo(FunctionInfo &&Arg) + FunctionInfo(FunctionInfo &&Arg) noexcept : Info(Arg.Info.getPointer(), Arg.Info.getInt()) { Arg.Info.setPointerAndInt(nullptr, 0); } @@ -121,7 +121,7 @@ Info.setPointer(new AlignedMap(*RHSPtr)); return *this; } - FunctionInfo &operator=(FunctionInfo &&RHS) { + FunctionInfo &operator=(FunctionInfo &&RHS) noexcept { delete Info.getPointer(); Info.setPointerAndInt(RHS.Info.getPointer(), RHS.Info.getInt()); RHS.Info.setPointerAndInt(nullptr, 0); @@ -953,7 +953,7 @@ std::function GetTLI) : DL(DL), GetTLI(std::move(GetTLI)) {} -GlobalsAAResult::GlobalsAAResult(GlobalsAAResult &&Arg) +GlobalsAAResult::GlobalsAAResult(GlobalsAAResult &&Arg) noexcept : AAResultBase(std::move(Arg)), DL(Arg.DL), GetTLI(std::move(Arg.GetTLI)), NonAddressTakenGlobals(std::move(Arg.NonAddressTakenGlobals)), IndirectGlobals(std::move(Arg.IndirectGlobals)), diff --git a/llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp b/llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp --- a/llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp +++ b/llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp @@ -262,7 +262,7 @@ } // namespace llvm InlineSizeEstimatorAnalysis::InlineSizeEstimatorAnalysis() = default; InlineSizeEstimatorAnalysis ::InlineSizeEstimatorAnalysis( - InlineSizeEstimatorAnalysis &&) {} + InlineSizeEstimatorAnalysis &&) noexcept {} InlineSizeEstimatorAnalysis::~InlineSizeEstimatorAnalysis() = default; InlineSizeEstimatorAnalysis::Result InlineSizeEstimatorAnalysis::run(const Function &F, diff --git a/llvm/lib/Analysis/LazyCallGraph.cpp b/llvm/lib/Analysis/LazyCallGraph.cpp --- a/llvm/lib/Analysis/LazyCallGraph.cpp +++ b/llvm/lib/Analysis/LazyCallGraph.cpp @@ -204,7 +204,7 @@ }); } -LazyCallGraph::LazyCallGraph(LazyCallGraph &&G) +LazyCallGraph::LazyCallGraph(LazyCallGraph &&G) noexcept : BPA(std::move(G.BPA)), NodeMap(std::move(G.NodeMap)), EntryEdges(std::move(G.EntryEdges)), SCCBPA(std::move(G.SCCBPA)), SCCMap(std::move(G.SCCMap)), LibFunctions(std::move(G.LibFunctions)) { @@ -219,7 +219,7 @@ return !(PAC.preserved() || PAC.preservedSet>()); } -LazyCallGraph &LazyCallGraph::operator=(LazyCallGraph &&G) { +LazyCallGraph &LazyCallGraph::operator=(LazyCallGraph &&G) noexcept { BPA = std::move(G.BPA); NodeMap = std::move(G.NodeMap); EntryEdges = std::move(G.EntryEdges); diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp --- a/llvm/lib/Analysis/ScalarEvolution.cpp +++ b/llvm/lib/Analysis/ScalarEvolution.cpp @@ -13411,7 +13411,7 @@ HasGuards = GuardDecl && !GuardDecl->use_empty(); } -ScalarEvolution::ScalarEvolution(ScalarEvolution &&Arg) +ScalarEvolution::ScalarEvolution(ScalarEvolution &&Arg) noexcept : F(Arg.F), HasGuards(Arg.HasGuards), TLI(Arg.TLI), AC(Arg.AC), DT(Arg.DT), LI(Arg.LI), CouldNotCompute(std::move(Arg.CouldNotCompute)), ValueExprMap(std::move(Arg.ValueExprMap)), diff --git a/llvm/lib/Analysis/TargetLibraryInfo.cpp b/llvm/lib/Analysis/TargetLibraryInfo.cpp --- a/llvm/lib/Analysis/TargetLibraryInfo.cpp +++ b/llvm/lib/Analysis/TargetLibraryInfo.cpp @@ -895,7 +895,8 @@ ScalarDescs = TLI.ScalarDescs; } -TargetLibraryInfoImpl::TargetLibraryInfoImpl(TargetLibraryInfoImpl &&TLI) +TargetLibraryInfoImpl::TargetLibraryInfoImpl( + TargetLibraryInfoImpl &&TLI) noexcept : CustomNames(std::move(TLI.CustomNames)), ShouldExtI32Param(TLI.ShouldExtI32Param), ShouldExtI32Return(TLI.ShouldExtI32Return), @@ -919,7 +920,8 @@ return *this; } -TargetLibraryInfoImpl &TargetLibraryInfoImpl::operator=(TargetLibraryInfoImpl &&TLI) { +TargetLibraryInfoImpl & +TargetLibraryInfoImpl::operator=(TargetLibraryInfoImpl &&TLI) noexcept { CustomNames = std::move(TLI.CustomNames); ShouldExtI32Param = TLI.ShouldExtI32Param; ShouldExtI32Return = TLI.ShouldExtI32Return; diff --git a/llvm/lib/Analysis/TargetTransformInfo.cpp b/llvm/lib/Analysis/TargetTransformInfo.cpp --- a/llvm/lib/Analysis/TargetTransformInfo.cpp +++ b/llvm/lib/Analysis/TargetTransformInfo.cpp @@ -187,10 +187,11 @@ TargetTransformInfo::~TargetTransformInfo() = default; -TargetTransformInfo::TargetTransformInfo(TargetTransformInfo &&Arg) +TargetTransformInfo::TargetTransformInfo(TargetTransformInfo &&Arg) noexcept : TTIImpl(std::move(Arg.TTIImpl)) {} -TargetTransformInfo &TargetTransformInfo::operator=(TargetTransformInfo &&RHS) { +TargetTransformInfo & +TargetTransformInfo::operator=(TargetTransformInfo &&RHS) noexcept { TTIImpl = std::move(RHS.TTIImpl); return *this; } diff --git a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp --- a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp +++ b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp @@ -2348,11 +2348,11 @@ } } -MetadataLoader &MetadataLoader::operator=(MetadataLoader &&RHS) { +MetadataLoader &MetadataLoader::operator=(MetadataLoader &&RHS) noexcept { Pimpl = std::move(RHS.Pimpl); return *this; } -MetadataLoader::MetadataLoader(MetadataLoader &&RHS) +MetadataLoader::MetadataLoader(MetadataLoader &&RHS) noexcept : Pimpl(std::move(RHS.Pimpl)) {} MetadataLoader::~MetadataLoader() = default; diff --git a/llvm/lib/CodeGen/MachineModuleInfo.cpp b/llvm/lib/CodeGen/MachineModuleInfo.cpp --- a/llvm/lib/CodeGen/MachineModuleInfo.cpp +++ b/llvm/lib/CodeGen/MachineModuleInfo.cpp @@ -56,7 +56,7 @@ ObjFileMMI = nullptr; } -MachineModuleInfo::MachineModuleInfo(MachineModuleInfo &&MMI) +MachineModuleInfo::MachineModuleInfo(MachineModuleInfo &&MMI) noexcept : TM(std::move(MMI.TM)), Context(MMI.TM.getTargetTriple(), MMI.TM.getMCAsmInfo(), MMI.TM.getMCRegisterInfo(), MMI.TM.getMCSubtargetInfo(), nullptr, diff --git a/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp b/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp --- a/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp +++ b/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp @@ -51,7 +51,7 @@ PDBSymbol::PDBSymbol(const IPDBSession &PDBSession) : Session(PDBSession) {} -PDBSymbol::PDBSymbol(PDBSymbol &&Other) +PDBSymbol::PDBSymbol(PDBSymbol &&Other) noexcept : Session(Other.Session), RawSymbol(std::move(Other.RawSymbol)) {} PDBSymbol::~PDBSymbol() = default; diff --git a/llvm/lib/Demangle/ItaniumDemangle.cpp b/llvm/lib/Demangle/ItaniumDemangle.cpp --- a/llvm/lib/Demangle/ItaniumDemangle.cpp +++ b/llvm/lib/Demangle/ItaniumDemangle.cpp @@ -402,13 +402,13 @@ } ItaniumPartialDemangler::ItaniumPartialDemangler( - ItaniumPartialDemangler &&Other) + ItaniumPartialDemangler &&Other) noexcept : RootNode(Other.RootNode), Context(Other.Context) { Other.Context = Other.RootNode = nullptr; } -ItaniumPartialDemangler &ItaniumPartialDemangler:: -operator=(ItaniumPartialDemangler &&Other) { +ItaniumPartialDemangler & +ItaniumPartialDemangler::operator=(ItaniumPartialDemangler &&Other) noexcept { std::swap(RootNode, Other.RootNode); std::swap(Context, Other.Context); return *this; diff --git a/llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp b/llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp --- a/llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp +++ b/llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp @@ -1095,7 +1095,8 @@ AllocateDataSection(AllocateDataSection), FinalizeMemory(FinalizeMemory), Destroy(Destroy) {} - MCJITMemoryManagerLikeCallbacks(MCJITMemoryManagerLikeCallbacks &&Other) { + MCJITMemoryManagerLikeCallbacks( + MCJITMemoryManagerLikeCallbacks &&Other) noexcept { std::swap(CreateContextCtx, Other.CreateContextCtx); std::swap(CreateContext, Other.CreateContext); std::swap(NotifyTerminating, Other.NotifyTerminating); diff --git a/llvm/lib/IR/Comdat.cpp b/llvm/lib/IR/Comdat.cpp --- a/llvm/lib/IR/Comdat.cpp +++ b/llvm/lib/IR/Comdat.cpp @@ -21,7 +21,7 @@ using namespace llvm; -Comdat::Comdat(Comdat &&C) : Name(C.Name), SK(C.SK) {} +Comdat::Comdat(Comdat &&C) noexcept : Name(C.Name), SK(C.SK) {} Comdat::Comdat() = default; diff --git a/llvm/lib/InterfaceStub/ELFObjHandler.cpp b/llvm/lib/InterfaceStub/ELFObjHandler.cpp --- a/llvm/lib/InterfaceStub/ELFObjHandler.cpp +++ b/llvm/lib/InterfaceStub/ELFObjHandler.cpp @@ -177,7 +177,7 @@ using Elf_Dyn = typename ELFT::Dyn; ELFStubBuilder(const ELFStubBuilder &) = delete; - ELFStubBuilder(ELFStubBuilder &&) = default; + ELFStubBuilder(ELFStubBuilder &&) noexcept = default; explicit ELFStubBuilder(const IFSStub &Stub) { DynSym.Name = ".dynsym"; diff --git a/llvm/lib/InterfaceStub/IFSStub.cpp b/llvm/lib/InterfaceStub/IFSStub.cpp --- a/llvm/lib/InterfaceStub/IFSStub.cpp +++ b/llvm/lib/InterfaceStub/IFSStub.cpp @@ -21,7 +21,7 @@ Symbols = Stub.Symbols; } -IFSStub::IFSStub(IFSStub &&Stub) { +IFSStub::IFSStub(IFSStub &&Stub) noexcept { IfsVersion = std::move(Stub.IfsVersion); Target = std::move(Stub.Target); SoName = std::move(Stub.SoName); @@ -45,7 +45,7 @@ Symbols = Stub.Symbols; } -IFSStubTriple::IFSStubTriple(IFSStubTriple &&Stub) { +IFSStubTriple::IFSStubTriple(IFSStubTriple &&Stub) noexcept { IfsVersion = std::move(Stub.IfsVersion); Target = std::move(Stub.Target); SoName = std::move(Stub.SoName); diff --git a/llvm/lib/MC/MCParser/MasmParser.cpp b/llvm/lib/MC/MCParser/MasmParser.cpp --- a/llvm/lib/MC/MCParser/MasmParser.cpp +++ b/llvm/lib/MC/MCParser/MasmParser.cpp @@ -186,10 +186,10 @@ struct StructInfo Structure); FieldInitializer(const FieldInitializer &Initializer); - FieldInitializer(FieldInitializer &&Initializer); + FieldInitializer(FieldInitializer &&Initializer) noexcept; FieldInitializer &operator=(const FieldInitializer &Initializer); - FieldInitializer &operator=(FieldInitializer &&Initializer); + FieldInitializer &operator=(FieldInitializer &&Initializer) noexcept; }; struct StructInitializer { @@ -298,7 +298,7 @@ } } -FieldInitializer::FieldInitializer(FieldInitializer &&Initializer) +FieldInitializer::FieldInitializer(FieldInitializer &&Initializer) noexcept : FT(Initializer.FT) { switch (FT) { case FT_INTEGRAL: @@ -343,7 +343,8 @@ return *this; } -FieldInitializer &FieldInitializer::operator=(FieldInitializer &&Initializer) { +FieldInitializer & +FieldInitializer::operator=(FieldInitializer &&Initializer) noexcept { if (FT != Initializer.FT) { switch (FT) { case FT_INTEGRAL: diff --git a/llvm/lib/Support/APFloat.cpp b/llvm/lib/Support/APFloat.cpp --- a/llvm/lib/Support/APFloat.cpp +++ b/llvm/lib/Support/APFloat.cpp @@ -856,7 +856,7 @@ return *this; } -IEEEFloat &IEEEFloat::operator=(IEEEFloat &&rhs) { +IEEEFloat &IEEEFloat::operator=(IEEEFloat &&rhs) noexcept { freeSignificand(); semantics = rhs.semantics; @@ -1040,7 +1040,7 @@ assign(rhs); } -IEEEFloat::IEEEFloat(IEEEFloat &&rhs) : semantics(&semBogus) { +IEEEFloat::IEEEFloat(IEEEFloat &&rhs) noexcept : semantics(&semBogus) { *this = std::move(rhs); } @@ -4547,7 +4547,7 @@ assert(Semantics == &semPPCDoubleDouble); } -DoubleAPFloat::DoubleAPFloat(DoubleAPFloat &&RHS) +DoubleAPFloat::DoubleAPFloat(DoubleAPFloat &&RHS) noexcept : Semantics(RHS.Semantics), Floats(std::move(RHS.Floats)) { RHS.Semantics = &semBogus; assert(Semantics == &semPPCDoubleDouble); diff --git a/llvm/lib/Support/FoldingSet.cpp b/llvm/lib/Support/FoldingSet.cpp --- a/llvm/lib/Support/FoldingSet.cpp +++ b/llvm/lib/Support/FoldingSet.cpp @@ -188,14 +188,14 @@ NumNodes = 0; } -FoldingSetBase::FoldingSetBase(FoldingSetBase &&Arg) +FoldingSetBase::FoldingSetBase(FoldingSetBase &&Arg) noexcept : Buckets(Arg.Buckets), NumBuckets(Arg.NumBuckets), NumNodes(Arg.NumNodes) { Arg.Buckets = nullptr; Arg.NumBuckets = 0; Arg.NumNodes = 0; } -FoldingSetBase &FoldingSetBase::operator=(FoldingSetBase &&RHS) { +FoldingSetBase &FoldingSetBase::operator=(FoldingSetBase &&RHS) noexcept { free(Buckets); // This may be null if the set is in a moved-from state. Buckets = RHS.Buckets; NumBuckets = RHS.NumBuckets; diff --git a/llvm/lib/Support/Path.cpp b/llvm/lib/Support/Path.cpp --- a/llvm/lib/Support/Path.cpp +++ b/llvm/lib/Support/Path.cpp @@ -1216,8 +1216,8 @@ TempFile::TempFile(StringRef Name, int FD) : TmpName(std::string(Name)), FD(FD) {} -TempFile::TempFile(TempFile &&Other) { *this = std::move(Other); } -TempFile &TempFile::operator=(TempFile &&Other) { +TempFile::TempFile(TempFile &&Other) noexcept { *this = std::move(Other); } +TempFile &TempFile::operator=(TempFile &&Other) noexcept { TmpName = std::move(Other.TmpName); FD = Other.FD; Other.Done = true; diff --git a/llvm/lib/Support/Regex.cpp b/llvm/lib/Support/Regex.cpp --- a/llvm/lib/Support/Regex.cpp +++ b/llvm/lib/Support/Regex.cpp @@ -42,7 +42,7 @@ Regex::Regex(StringRef regex, unsigned Flags) : Regex(regex, static_cast(Flags)) {} -Regex::Regex(Regex &®ex) { +Regex::Regex(Regex &®ex) noexcept { preg = regex.preg; error = regex.error; regex.preg = nullptr; diff --git a/llvm/lib/Support/SourceMgr.cpp b/llvm/lib/Support/SourceMgr.cpp --- a/llvm/lib/Support/SourceMgr.cpp +++ b/llvm/lib/Support/SourceMgr.cpp @@ -167,7 +167,7 @@ return getPointerForLineNumberSpecialized(LineNo); } -SourceMgr::SrcBuffer::SrcBuffer(SourceMgr::SrcBuffer &&Other) +SourceMgr::SrcBuffer::SrcBuffer(SourceMgr::SrcBuffer &&Other) noexcept : Buffer(std::move(Other.Buffer)), OffsetCache(Other.OffsetCache), IncludeLoc(Other.IncludeLoc) { Other.OffsetCache = nullptr; diff --git a/llvm/lib/Transforms/IPO/AttributorAttributes.cpp b/llvm/lib/Transforms/IPO/AttributorAttributes.cpp --- a/llvm/lib/Transforms/IPO/AttributorAttributes.cpp +++ b/llvm/lib/Transforms/IPO/AttributorAttributes.cpp @@ -766,7 +766,7 @@ return *this; } - State &operator=(State &&R) { + State &operator=(State &&R) noexcept { if (this == &R) return *this; std::swap(BS, R.BS); diff --git a/llvm/lib/Transforms/Scalar/MergeICmps.cpp b/llvm/lib/Transforms/Scalar/MergeICmps.cpp --- a/llvm/lib/Transforms/Scalar/MergeICmps.cpp +++ b/llvm/lib/Transforms/Scalar/MergeICmps.cpp @@ -78,7 +78,7 @@ BCEAtom &operator=(const BCEAtom &) = delete; BCEAtom(BCEAtom &&that) = default; - BCEAtom &operator=(BCEAtom &&that) { + BCEAtom &operator=(BCEAtom &&that) noexcept { if (this == &that) return *this; GEP = that.GEP; diff --git a/llvm/lib/Transforms/Scalar/NewGVN.cpp b/llvm/lib/Transforms/Scalar/NewGVN.cpp --- a/llvm/lib/Transforms/Scalar/NewGVN.cpp +++ b/llvm/lib/Transforms/Scalar/NewGVN.cpp @@ -678,7 +678,7 @@ const PredicateBase *PredDep = nullptr) : Expr(Expr), ExtraDep(ExtraDep), PredDep(PredDep) {} ExprResult(const ExprResult &) = delete; - ExprResult(ExprResult &&Other) + ExprResult(ExprResult &&Other) noexcept : Expr(Other.Expr), ExtraDep(Other.ExtraDep), PredDep(Other.PredDep) { Other.Expr = nullptr; Other.ExtraDep = nullptr; diff --git a/llvm/tools/llvm-exegesis/lib/PerfHelper.cpp b/llvm/tools/llvm-exegesis/lib/PerfHelper.cpp --- a/llvm/tools/llvm-exegesis/lib/PerfHelper.cpp +++ b/llvm/tools/llvm-exegesis/lib/PerfHelper.cpp @@ -51,7 +51,7 @@ #endif } -PerfEvent::PerfEvent(PerfEvent &&Other) +PerfEvent::PerfEvent(PerfEvent &&Other) noexcept : EventString(std::move(Other.EventString)), FullQualifiedEventString(std::move(Other.FullQualifiedEventString)), Attr(Other.Attr) { diff --git a/llvm/utils/TableGen/DecoderEmitter.cpp b/llvm/utils/TableGen/DecoderEmitter.cpp --- a/llvm/utils/TableGen/DecoderEmitter.cpp +++ b/llvm/utils/TableGen/DecoderEmitter.cpp @@ -300,7 +300,7 @@ EncodingIDAndOpcode LastOpcFiltered; public: - Filter(Filter &&f); + Filter(Filter &&f) noexcept; Filter(FilterChooser &owner, unsigned startBit, unsigned numBits, bool mixed); ~Filter() = default; @@ -557,13 +557,12 @@ // // /////////////////////////// -Filter::Filter(Filter &&f) - : Owner(f.Owner), StartBit(f.StartBit), NumBits(f.NumBits), Mixed(f.Mixed), - FilteredInstructions(std::move(f.FilteredInstructions)), - VariableInstructions(std::move(f.VariableInstructions)), - FilterChooserMap(std::move(f.FilterChooserMap)), NumFiltered(f.NumFiltered), - LastOpcFiltered(f.LastOpcFiltered) { -} +Filter::Filter(Filter &&f) noexcept + : Owner(f.Owner), StartBit(f.StartBit), NumBits(f.NumBits), Mixed(f.Mixed), + FilteredInstructions(std::move(f.FilteredInstructions)), + VariableInstructions(std::move(f.VariableInstructions)), + FilterChooserMap(std::move(f.FilterChooserMap)), + NumFiltered(f.NumFiltered), LastOpcFiltered(f.LastOpcFiltered) {} Filter::Filter(FilterChooser &owner, unsigned startBit, unsigned numBits, bool mixed)