summaryrefslogtreecommitdiff
path: root/include/llvm
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-09-01 01:45:53 +0000
committerDan Gohman <gohman@apple.com>2010-09-01 01:45:53 +0000
commit191bd64a39490fa75d35b9aaecdd57b00c7a8b5f (patch)
treec6e2609bf9667d67edcbeadc22fc0662d6eaac30 /include/llvm
parent9cfad89a680e50568ad8f6ff243e7409f42bb2d7 (diff)
downloadllvm-191bd64a39490fa75d35b9aaecdd57b00c7a8b5f.tar.gz
llvm-191bd64a39490fa75d35b9aaecdd57b00c7a8b5f.tar.bz2
llvm-191bd64a39490fa75d35b9aaecdd57b00c7a8b5f.tar.xz
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
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/Analysis/IVUsers.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/include/llvm/Analysis/IVUsers.h b/include/llvm/Analysis/IVUsers.h
index 7aa34f1cff..578e6aba83 100644
--- a/include/llvm/Analysis/IVUsers.h
+++ b/include/llvm/Analysis/IVUsers.h
@@ -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);