Lines Matching refs:Reachable
11 // determining reachable blocks within a CFG.
31 llvm::BitVector &Reachable;
40 DeadCodeScan(llvm::BitVector &reachable)
41 : Visited(reachable.size()),
42 Reachable(reachable) {}
59 if (Reachable[blockID] || Visited[blockID])
76 if (!Reachable[blockID]) {
128 // It is possible that this block has been marked reachable after
130 if (Reachable[Block->getBlockID()])
148 count += clang::reachable_code::ScanReachableFromBlock(Block, Reachable);
154 count += clang::reachable_code::ScanReachableFromBlock(Block, Reachable);
171 if (Reachable[block->getBlockID()])
174 count += clang::reachable_code::ScanReachableFromBlock(block, Reachable);
258 llvm::BitVector &Reachable) {
264 // The entry block may have already been marked reachable
266 if (!Reachable[Start->getBlockID()]) {
268 Reachable[Start->getBlockID()] = true;
273 // Find the reachable blocks from 'Start'.
277 // Look at the successors and mark then reachable.
282 if (!Reachable[blockID]) {
283 Reachable.set(blockID);
297 // Scan for reachable blocks from the entrance of the CFG.
299 llvm::BitVector reachable(cfg->getNumBlockIDs());
300 unsigned numReachable = ScanReachableFromBlock(&cfg->getEntry(), reachable);
309 numReachable += ScanReachableFromBlock(*I, reachable);
319 // A block may have been marked reachable during this loop.
320 if (reachable[block->getBlockID()])
323 DeadCodeScan DS(reachable);