Revert 112442 and 112440 until the compile time problems introduced

by 112440 are resolved.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112692 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2010-09-01 01:45:53 +00:00
parent 9cfad89a68
commit 191bd64a39
4 changed files with 133 additions and 203 deletions

View File

@@ -27,7 +27,6 @@ class Value;
class IVUsers;
class ScalarEvolution;
class SCEV;
class SCEVAddRecExpr;
class IVUsers;
/// IVStrideUse - Keep track of one use of a strided induction variable.
@@ -123,7 +122,7 @@ class IVUsers : public LoopPass {
LoopInfo *LI;
DominatorTree *DT;
ScalarEvolution *SE;
SmallPtrSet<Instruction *, 16> Processed;
SmallPtrSet<Instruction*,16> Processed;
/// IVUses - A list of all tracked IV uses of induction variable expressions
/// we are interested in.
@@ -135,16 +134,14 @@ class IVUsers : public LoopPass {
virtual void releaseMemory();
const SCEVAddRecExpr *findInterestingAddRec(const SCEV *S) const;
bool isInterestingUser(const Instruction *User) const;
public:
static char ID; // Pass ID, replacement for typeid
IVUsers();
/// AddUsersIfInteresting - Inspect the def-use graph starting at the
/// specified Instruction and add IVUsers.
void AddUsersIfInteresting(Instruction *I);
/// AddUsersIfInteresting - Inspect the specified Instruction. If it is a
/// reducible SCEV, recursively add its users to the IVUsesByStride set and
/// return true. Otherwise, return false.
bool AddUsersIfInteresting(Instruction *I);
IVStrideUse &AddUser(Instruction *User, Value *Operand);