aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Analysis/SparsePropagation.h
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2009-09-19 18:33:36 +0000
committerNick Lewycky <nicholas@mxc.ca>2009-09-19 18:33:36 +0000
commit875646f376f6c83bf8426fdb44e1dbf312cf784e (patch)
tree85dc6d15ec799d5116ec32c9a8db80f1b01a9a25 /include/llvm/Analysis/SparsePropagation.h
parentad3893678172e7b22a6d4ef3e6387b8d773aa1c7 (diff)
downloadexternal_llvm-875646f376f6c83bf8426fdb44e1dbf312cf784e.zip
external_llvm-875646f376f6c83bf8426fdb44e1dbf312cf784e.tar.gz
external_llvm-875646f376f6c83bf8426fdb44e1dbf312cf784e.tar.bz2
Lett users of sparse propagation do their own thing with phi nodes if they want
to. This can be combined with LCSSA or SSI form to store more information on a PHINode than can be computed by looking at its incoming values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82317 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/SparsePropagation.h')
-rw-r--r--include/llvm/Analysis/SparsePropagation.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/Analysis/SparsePropagation.h b/include/llvm/Analysis/SparsePropagation.h
index cc655aa..820e1bd 100644
--- a/include/llvm/Analysis/SparsePropagation.h
+++ b/include/llvm/Analysis/SparsePropagation.h
@@ -72,6 +72,12 @@ public:
virtual LatticeVal ComputeConstant(Constant *C) {
return getOverdefinedVal(); // always safe
}
+
+ /// IsSpecialCasedPHI - Given a PHI node, determine whether this PHI node is
+ /// one that the we want to handle through ComputeInstructionState.
+ virtual bool IsSpecialCasedPHI(PHINode *PN) {
+ return false;
+ }
/// GetConstant - If the specified lattice value is representable as an LLVM
/// constant value, return it. Otherwise return null. The returned value