From 87944916a4764dabc2f89cbec0a6c7e439c28530 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 24 Sep 2002 15:42:27 +0000 Subject: [PATCH] Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by other passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3906 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Transforms/Scalar.h | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h index d952ead2d71..188e3e298f3 100644 --- a/include/llvm/Transforms/Scalar.h +++ b/include/llvm/Transforms/Scalar.h @@ -10,8 +10,8 @@ class Pass; class TargetData; -class BasicBlock; class GetElementPtrInst; +class PassInfo; //===----------------------------------------------------------------------===// // @@ -162,7 +162,7 @@ Pass *createReassociatePass(); // // This pass eliminates correlated conditions, such as these: // if (X == 0) -// if (X > 2) // Known false +// if (X > 2) ; // Known false // else // Y = X * Z; // = 0 // @@ -179,12 +179,15 @@ Pass *createCFGSimplificationPass(); // // BreakCriticalEdges pass - Break all of the critical edges in the CFG by // inserting a dummy basic block. This pass may be "required" by passes that -// cannot deal with critical edges. For this usage, the structure type is -// forward declared. This pass obviously invalidates the CFG, but can update -// forward dominator (set, immediate dominators, and tree) information. +// cannot deal with critical edges. For this usage, a pass must call: +// +// AU.addRequiredID(BreakCriticalEdgesID); +// +// This pass obviously invalidates the CFG, but can update forward dominator +// (set, immediate dominators, and tree) information. // -class BreakCriticalEdges; Pass *createBreakCriticalEdgesPass(); +extern const PassInfo *BreakCriticalEdgesID; //===----------------------------------------------------------------------===// // These two passes convert malloc and free instructions to and from %malloc &