summaryrefslogtreecommitdiff
path: root/include/llvm/Analysis/SparsePropagation.h
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2009-07-06 22:37:39 +0000
committerOwen Anderson <resistor@mac.com>2009-07-06 22:37:39 +0000
commit76f600b205606a055ec35e7d3fd1a99602329d67 (patch)
tree87ac4612f76908198ed9aa0d68ae97b1d733614e /include/llvm/Analysis/SparsePropagation.h
parent3147fb2cff9ca0d258f8ab20ff23b9c447024df1 (diff)
downloadllvm-76f600b205606a055ec35e7d3fd1a99602329d67.tar.gz
llvm-76f600b205606a055ec35e7d3fd1a99602329d67.tar.bz2
llvm-76f600b205606a055ec35e7d3fd1a99602329d67.tar.xz
Finish LLVMContext-ing lib/Analysis. This required pushing LLVMContext's through the ValueTracking API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74873 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/SparsePropagation.h')
-rw-r--r--include/llvm/Analysis/SparsePropagation.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/llvm/Analysis/SparsePropagation.h b/include/llvm/Analysis/SparsePropagation.h
index c75531a7e6..356a5ee693 100644
--- a/include/llvm/Analysis/SparsePropagation.h
+++ b/include/llvm/Analysis/SparsePropagation.h
@@ -31,6 +31,7 @@ namespace llvm {
class BasicBlock;
class Function;
class SparseSolver;
+ class LLVMContext;
template<typename T> class SmallVectorImpl;
@@ -113,6 +114,8 @@ class SparseSolver {
/// compute transfer functions.
AbstractLatticeFunction *LatticeFunc;
+ LLVMContext *Context;
+
DenseMap<Value*, LatticeVal> ValueState; // The state each value is in.
SmallPtrSet<BasicBlock*, 16> BBExecutable; // The bbs that are executable.
@@ -128,8 +131,8 @@ class SparseSolver {
SparseSolver(const SparseSolver&); // DO NOT IMPLEMENT
void operator=(const SparseSolver&); // DO NOT IMPLEMENT
public:
- explicit SparseSolver(AbstractLatticeFunction *Lattice)
- : LatticeFunc(Lattice) {}
+ explicit SparseSolver(AbstractLatticeFunction *Lattice, LLVMContext* C)
+ : LatticeFunc(Lattice), Context(C) {}
~SparseSolver() {
delete LatticeFunc;
}