cetus.analysis
Class DataFlow
java.lang.Object
cetus.analysis.DataFlow
public class DataFlow
- extends java.lang.Object
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DataFlow
public DataFlow()
getDefSet
public static java.util.Set getDefSet(BasicBlock block)
defines
public static java.util.Set<Expression> defines(Traversable root)
mayDefine
public static java.util.TreeSet<Expression> mayDefine(Traversable root)
defSet
public static java.util.TreeMap<Expression,Expression> defSet(Traversable root)
- Determines the set of definitions in the IR subtree starting
at the specified root. The definitions can be general
expressions because of pointer arithmetic.
- Returns:
- a map of definitions at and below the root to their
guarding expression, if any
getUseSet
public static java.util.Set getUseSet(BasicBlock block)
getUseSet
public static java.util.Set<Expression> getUseSet(Traversable root)
- Determines the set of uses in the IR subtree starting
at the specified root. The uses can be general expressions
because of pointer arithmetic.
- Returns:
- the set of uses at and below root
partitionScalarsAndArrays
public static void partitionScalarsAndArrays(java.util.Set<Expression> scalar_set,
java.util.Set<ArrayAccess> array_set,
java.util.Set<Expression> initial_set)