diff options
Diffstat (limited to 'llvm/lib/Transforms/Utils')
| -rw-r--r-- | llvm/lib/Transforms/Utils/ValueMapper.cpp | 10 | 
1 files changed, 10 insertions, 0 deletions
| diff --git a/llvm/lib/Transforms/Utils/ValueMapper.cpp b/llvm/lib/Transforms/Utils/ValueMapper.cpp index 63626934d10..64ba98e55c9 100644 --- a/llvm/lib/Transforms/Utils/ValueMapper.cpp +++ b/llvm/lib/Transforms/Utils/ValueMapper.cpp @@ -43,6 +43,16 @@ struct DelayedGlobalValueInit {  struct DelayedBasicBlock {    BasicBlock *OldBB;    std::unique_ptr<BasicBlock> TempBB; + +  // Explicit move for MSVC. +  DelayedBasicBlock(DelayedBasicBlock &&X) +      : OldBB(std::move(X.OldBB)), TempBB(std::move(X.TempBB)) {} +  DelayedBasicBlock &operator=(DelayedBasicBlock &&X) { +    OldBB = std::move(X.OldBB); +    TempBB = std::move(X.TempBB); +    return *this; +  } +    DelayedBasicBlock(const BlockAddress &Old)        : OldBB(Old.getBasicBlock()),          TempBB(BasicBlock::Create(Old.getContext())) {} | 

