[cfe-commits] [patch] remove redundant 'if'
Zhongxing Xu
xuzhongxing at gmail.com
Sun Feb 21 01:34:56 PST 2010
In CFG.cpp:267, B must be non-null because we have
if (!B)
B = Succ;
above.
Index: lib/Analysis/CFG.cpp
===================================================================
--- lib/Analysis/CFG.cpp (版本 96732)
+++ lib/Analysis/CFG.cpp (工作副本)
@@ -264,44 +264,43 @@
if (!B)
B = Succ;
- if (B) {
- // Finalize the last constructed block. This usually involves
reversing the
- // order of the statements in the block.
- if (Block) FinishBlock(B);
+ assert(B);
+ // Finalize the last constructed block. This usually involves reversing the
+ // order of the statements in the block.
+ if (Block) FinishBlock(B);
- // Backpatch the gotos whose label -> block mappings we didn't know when we
- // encountered them.
- for (BackpatchBlocksTy::iterator I = BackpatchBlocks.begin(),
+ // Backpatch the gotos whose label -> block mappings we didn't know when we
+ // encountered them.
+ for (BackpatchBlocksTy::iterator I = BackpatchBlocks.begin(),
E = BackpatchBlocks.end(); I != E; ++I ) {
- CFGBlock* B = *I;
- GotoStmt* G = cast<GotoStmt>(B->getTerminator());
- LabelMapTy::iterator LI = LabelMap.find(G->getLabel());
+ CFGBlock* B = *I;
+ GotoStmt* G = cast<GotoStmt>(B->getTerminator());
+ LabelMapTy::iterator LI = LabelMap.find(G->getLabel());
- // If there is no target for the goto, then we are looking at an
- // incomplete AST. Handle this by not registering a successor.
- if (LI == LabelMap.end()) continue;
+ // If there is no target for the goto, then we are looking at an
+ // incomplete AST. Handle this by not registering a successor.
+ if (LI == LabelMap.end()) continue;
- AddSuccessor(B, LI->second);
- }
+ AddSuccessor(B, LI->second);
+ }
- // Add successors to the Indirect Goto Dispatch block (if we have one).
- if (CFGBlock* B = cfg->getIndirectGotoBlock())
- for (LabelSetTy::iterator I = AddressTakenLabels.begin(),
+ // Add successors to the Indirect Goto Dispatch block (if we have one).
+ if (CFGBlock* B = cfg->getIndirectGotoBlock())
+ for (LabelSetTy::iterator I = AddressTakenLabels.begin(),
E = AddressTakenLabels.end(); I != E; ++I ) {
- // Lookup the target block.
- LabelMapTy::iterator LI = LabelMap.find(*I);
+ // Lookup the target block.
+ LabelMapTy::iterator LI = LabelMap.find(*I);
- // If there is no target block that contains label, then we are looking
- // at an incomplete AST. Handle this by not registering a successor.
- if (LI == LabelMap.end()) continue;
+ // If there is no target block that contains label, then we are looking
+ // at an incomplete AST. Handle this by not registering a successor.
+ if (LI == LabelMap.end()) continue;
- AddSuccessor(B, LI->second);
- }
+ AddSuccessor(B, LI->second);
+ }
- Succ = B;
- }
+ Succ = B;
// Create an empty entry block that has no predecessors.
cfg->setEntry(createBlock());
More information about the cfe-commits
mailing list