Lines Matching refs:BlockExtractor
1 //===- BlockExtractor.cpp - Extracts blocks into their own functions ------===//
41 class BlockExtractor : public ModulePass {
62 BlockExtractor(const SmallVectorImpl<BasicBlock *> &BlocksToExtract,
75 BlockExtractor(const SmallVectorImpl<SmallVector<BasicBlock *, 16>>
82 BlockExtractor() : BlockExtractor(SmallVector<BasicBlock *, 0>(), false) {}
91 char BlockExtractor::ID = 0;
92 INITIALIZE_PASS(BlockExtractor, "extract-blocks",
95 ModulePass *llvm::createBlockExtractorPass() { return new BlockExtractor(); }
98 return new BlockExtractor(BlocksToExtract, EraseFunctions);
104 return new BlockExtractor(GroupsOfBlocksToExtract, EraseFunctions);
108 void BlockExtractor::loadFile() {
111 report_fatal_error("BlockExtractor couldn't load the file.");
136 void BlockExtractor::splitLandingPadPreds(Function &F) {
165 bool BlockExtractor::runOnModule(Module &M) {
201 LLVM_DEBUG(dbgs() << "BlockExtractor: Extracting "
223 LLVM_DEBUG(dbgs() << "BlockExtractor: Trying to delete " << F->getName()