[llvm-commits] CVS: llvm/include/llvm/Transforms/Scalar.h
Chris Lattner
lattner at cs.uiuc.edu
Tue Sep 24 10:43:00 PDT 2002
Changes in directory llvm/include/llvm/Transforms:
Scalar.h updated: 1.10 -> 1.11
---
Log message:
Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by
other passes
---
Diffs of the changes:
Index: llvm/include/llvm/Transforms/Scalar.h
diff -u llvm/include/llvm/Transforms/Scalar.h:1.10 llvm/include/llvm/Transforms/Scalar.h:1.11
--- llvm/include/llvm/Transforms/Scalar.h:1.10 Mon Sep 23 19:08:37 2002
+++ llvm/include/llvm/Transforms/Scalar.h Tue Sep 24 10:42:27 2002
@@ -10,8 +10,8 @@
class Pass;
class TargetData;
-class BasicBlock;
class GetElementPtrInst;
+class PassInfo;
//===----------------------------------------------------------------------===//
//
@@ -162,7 +162,7 @@
//
// 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 @@
//
// 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 &
More information about the llvm-commits
mailing list