MLIR
20.0.0git
|
This lattice anchor represents a control-flow edge between a block and one of its successors. More...
#include "mlir/Analysis/DataFlow/DeadCodeAnalysis.h"
Public Member Functions | |
Block * | getFrom () const |
Get the block from which the edge originates. More... | |
Block * | getTo () const |
Get the target block. More... | |
void | print (raw_ostream &os) const override |
Print the blocks between the control-flow edge. More... | |
Location | getLoc () const override |
Get a fused location of both blocks. More... | |
Public Member Functions inherited from mlir::GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > > | |
GenericLatticeAnchorBase (ValueT &&value) | |
Construct an instance of the lattice anchor using the provided value and the type ID of the concrete type. More... | |
bool | operator== (const std::pair< Block *, Block * > &value) const |
Two lattice anchors are equal if their values are equal. More... | |
const std::pair< Block *, Block * > & | getValue () const |
Get the contents of the lattice anchor. More... | |
Public Member Functions inherited from mlir::GenericLatticeAnchor | |
virtual | ~GenericLatticeAnchor () |
TypeID | getTypeID () const |
Get the abstract lattice anchor's type identifier. More... | |
Additional Inherited Members | |
Public Types inherited from mlir::GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > > | |
using | KeyTy = std::pair< Block *, Block * > |
The concrete key type used by the storage uniquer. More... | |
using | Base = GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > > |
Alias for the base class. More... | |
Static Public Member Functions inherited from mlir::GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > > | |
static CFGEdge * | get (StorageUniquer &uniquer, Args &&...args) |
Get a uniqued instance of this lattice anchor class with the given arguments. More... | |
static CFGEdge * | construct (StorageUniquer::StorageAllocator &alloc, ValueT &&value) |
Allocate space for a lattice anchor and construct it in-place. More... | |
static bool | classof (const GenericLatticeAnchor *point) |
Provide LLVM-style RTTI using type IDs. More... | |
Protected Member Functions inherited from mlir::GenericLatticeAnchor | |
GenericLatticeAnchor (TypeID typeID) | |
Create an abstract lattice anchor with type identifier. More... | |
Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage | |
BaseStorage ()=default | |
This lattice anchor represents a control-flow edge between a block and one of its successors.
Definition at line 145 of file DeadCodeAnalysis.h.
|
inline |
Get the block from which the edge originates.
Definition at line 151 of file DeadCodeAnalysis.h.
References mlir::GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > >::getValue().
|
overridevirtual |
Get a fused location of both blocks.
Implements mlir::GenericLatticeAnchor.
Definition at line 103 of file DeadCodeAnalysis.cpp.
References mlir::get(), getContext(), getFrom(), mlir::Region::getLoc(), mlir::Block::getParent(), and getTo().
|
inline |
Get the target block.
Definition at line 153 of file DeadCodeAnalysis.h.
References mlir::GenericLatticeAnchorBase< CFGEdge, std::pair< Block *, Block * > >::getValue().
|
overridevirtual |
Print the blocks between the control-flow edge.
Implements mlir::GenericLatticeAnchor.
Definition at line 109 of file DeadCodeAnalysis.cpp.
References getFrom(), getTo(), and mlir::Block::print().