diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Analysis/SimplifyCFG.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/llvm/Analysis/SimplifyCFG.h b/include/llvm/Analysis/SimplifyCFG.h new file mode 100644 index 0000000..062d16a --- /dev/null +++ b/include/llvm/Analysis/SimplifyCFG.h @@ -0,0 +1,27 @@ +//===- llvm/Analysis/SimplifyCFG.h - CFG Simplification XForms ---*- C++ -*--=// +// +// This file provides several routines that are useful for simplifying CFGs in +// various ways... +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_ANALYSIS_SIMPLIFY_CFG_H +#define LLVM_ANALYSIS_SIMPLIFY_CFG_H + +class BasicBlock; +class Method; + +namespace cfg { + + // UnifyAllExitNodes - Unify all exit nodes of the CFG by creating a new + // BasicBlock, and converting all returns to unconditional branches to this + // new basic block. The singular exit node is returned. + // + // If there are no return stmts in the Method, a null pointer is returned. + // + BasicBlock *UnifyAllExitNodes(Method *M); + +} // End Namespace cfg + + +#endif |