diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-12-18 23:00:28 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-12-18 23:00:28 +0000 |
commit | 582abddeee6bd49762d562d3e641a4e290d464be (patch) | |
tree | b5fa7798acd51d4f2952f00510e50f582910ee2b | |
parent | 270bfbd3d1fb42000b23e5747ac7957b0e9fcab8 (diff) |
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170465 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/MachineInstr.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp index 2d4392c47d..3b83d02bb0 100644 --- a/lib/CodeGen/MachineInstr.cpp +++ b/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); } |