From: Jakob Stoklund Olesen Date: Tue, 18 Dec 2012 23:00:28 +0000 (+0000) Subject: Verify bundle flag consistency when setting them. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=00f6c7754b3611fc0bbfe9e0f70de5df1a1af3ba;p=platform%2Fupstream%2Fllvm.git Verify bundle flag consistency when setting them. Now that the bundle flag aware APIs are all in place, it is possible to continuously verify the flag consistency. llvm-svn: 170465 --- diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index 2d4392c..3b83d02 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -878,6 +878,7 @@ void MachineInstr::bundleWithPred() { setFlag(BundledPred); MachineBasicBlock::instr_iterator Pred = this; --Pred; + assert(!Pred->isBundledWithSucc() && "Inconsistent bundle flags"); Pred->setFlag(BundledSucc); } @@ -886,6 +887,7 @@ void MachineInstr::bundleWithSucc() { setFlag(BundledSucc); MachineBasicBlock::instr_iterator Succ = this; ++Succ; + assert(!Succ->isBundledWithPred() && "Inconsistent bundle flags"); Succ->setFlag(BundledPred); } @@ -894,6 +896,7 @@ void MachineInstr::unbundleFromPred() { clearFlag(BundledPred); MachineBasicBlock::instr_iterator Pred = this; --Pred; + assert(Pred->isBundledWithSucc() && "Inconsistent bundle flags"); Pred->clearFlag(BundledSucc); } @@ -902,6 +905,7 @@ void MachineInstr::unbundleFromSucc() { clearFlag(BundledSucc); MachineBasicBlock::instr_iterator Succ = this; --Succ; + assert(Succ->isBundledWithPred() && "Inconsistent bundle flags"); Succ->clearFlag(BundledPred); }