|
| LogicalResult | visitOperation (Operation *op, ArrayRef< const AxisInfoLattice * > operands, ArrayRef< AxisInfoLattice * > results) override |
| void | setToEntryState (AxisInfoLattice *lattice) override |
| | SparseForwardDataFlowAnalysis (DataFlowSolver &solver) |
| virtual LogicalResult | visitOperation (Operation *op, ArrayRef< const AxisInfoLattice * > operands, ArrayRef< AxisInfoLattice * > results)=0 |
| | Visit an operation with the lattices of its operands.
|
| virtual void | visitExternalCall (CallOpInterface call, ArrayRef< const AxisInfoLattice * > argumentLattices, ArrayRef< AxisInfoLattice * > resultLattices) |
| | Visit a call operation to an externally defined function given the lattices of its arguments.
|
| virtual void | visitNonControlFlowArguments (Operation *op, const RegionSuccessor &successor, ValueRange nonSuccessorInputs, ArrayRef< AxisInfoLattice * > nonSuccessorInputLattices) |
| | Given an operation with possible region control-flow, the lattices of the operands, and a region successor, compute the lattice values for non-successor-inputs (ex.
|
| LogicalResult | initialize (Operation *top) override |
| | Initialize the analysis by visiting every owner of an SSA value: all operations and blocks.
|
| LogicalResult | visit (ProgramPoint *point) override |
| | Visit a program point.
|
| virtual | ~DataFlowAnalysis () |
| | DataFlowAnalysis (DataFlowSolver &solver) |
| | Create an analysis with a reference to the parent solver.
|
| virtual void | initializeEquivalentLatticeAnchor (Operation *top) |
| | Initialize lattice anchor equivalence class from the provided top-level operation.
|
| TypeID | getTypeID () const |
| | Return the TypeID of the concrete analysis class.
|
|
| AxisInfoLattice * | getLatticeElement (Value value) override |
| | Get the lattice element for a value.
|
| const AxisInfoLattice * | getLatticeElementFor (ProgramPoint *point, Value value) |
| | Get the lattice element for a value and create a dependency on the provided program point.
|
| virtual void | setToEntryState (AxisInfoLattice *lattice)=0 |
| | Set the given lattice element(s) at control flow entry point(s).
|
| void | setAllToEntryStates (ArrayRef< AxisInfoLattice * > lattices) |
| | AbstractSparseForwardDataFlowAnalysis (DataFlowSolver &solver) |
| const AbstractSparseLattice * | getLatticeElementFor (ProgramPoint *point, Value value) |
| | Get a read-only lattice element for a value and add it as a dependency to a program point.
|
| virtual void | setToEntryState (AbstractSparseLattice *lattice)=0 |
| | Set the given lattice element(s) at control flow entry point(s).
|
| void | setAllToEntryStates (ArrayRef< AbstractSparseLattice * > lattices) |
| void | join (AbstractSparseLattice *lhs, const AbstractSparseLattice &rhs) |
| | Join the lattice element and propagate and update if it changed.
|
| virtual LogicalResult | visitCallOperation (CallOpInterface call, ArrayRef< const AbstractSparseLattice * > operandLattices, ArrayRef< AbstractSparseLattice * > resultLattices) |
| | Visits a call operation.
|
| virtual void | visitCallableOperation (CallableOpInterface callable, ArrayRef< AbstractSparseLattice * > argLattices) |
| | Visits a callable operation.
|
| void | addDependency (AnalysisState *state, ProgramPoint *point) |
| | Create a dependency between the given analysis state and lattice anchor on this analysis.
|
| void | propagateIfChanged (AnalysisState *state, ChangeResult changed) |
| | Propagate an update to a state if it changed.
|
| template<typename AnchorT> |
| void | registerAnchorKind () |
| | Register a custom lattice anchor class.
|
| template<typename AnchorT, typename... Args> |
| AnchorT * | getLatticeAnchor (Args &&...args) |
| | Get or create a custom lattice anchor.
|
| template<typename StateT, typename AnchorT> |
| void | unionLatticeAnchors (AnchorT anchor, AnchorT other) |
| | Union input anchors under the given state.
|
| template<typename StateT, typename AnchorT> |
| StateT * | getOrCreate (AnchorT anchor) |
| | Get the analysis state associated with the lattice anchor.
|
| template<typename StateT, typename AnchorT> |
| const StateT * | getOrCreateFor (ProgramPoint *dependent, AnchorT anchor) |
| | Get a read-only analysis state for the given point and create a dependency on dependent.
|
| ProgramPoint * | getProgramPointBefore (Operation *op) |
| | Get a uniqued program point instance.
|
| ProgramPoint * | getProgramPointBefore (Block *block) |
| ProgramPoint * | getProgramPointAfter (Operation *op) |
| ProgramPoint * | getProgramPointAfter (Block *block) |
| const DataFlowConfig & | getSolverConfig () const |
| | Return the configuration of the solver used for this analysis.
|
Sparse forward dataflow analysis that computes AxisInfo for vector values reachable from the entry of the analyzed op.
Definition at line 191 of file XeGPUContiguityAnalysis.cpp.