MLIR
19.0.0git
|
This program point 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::GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > > | |
GenericProgramPointBase (ValueT &&value) | |
Construct an instance of the program point using the provided value and the type ID of the concrete type. More... | |
bool | operator== (const std::pair< Block *, Block * > &value) const |
Two program points are equal if their values are equal. More... | |
const std::pair< Block *, Block * > & | getValue () const |
Get the contents of the program point. More... | |
Public Member Functions inherited from mlir::GenericProgramPoint | |
virtual | ~GenericProgramPoint () |
TypeID | getTypeID () const |
Get the abstract program point's type identifier. More... | |
Additional Inherited Members | |
Public Types inherited from mlir::GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > > | |
using | KeyTy = std::pair< Block *, Block * > |
The concrete key type used by the storage uniquer. More... | |
using | Base = GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > > |
Alias for the base class. More... | |
Static Public Member Functions inherited from mlir::GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > > | |
static CFGEdge * | get (StorageUniquer &uniquer, Args &&...args) |
Get a uniqued instance of this program point class with the given arguments. More... | |
static CFGEdge * | construct (StorageUniquer::StorageAllocator &alloc, ValueT &&value) |
Allocate space for a program point and construct it in-place. More... | |
static bool | classof (const GenericProgramPoint *point) |
Provide LLVM-style RTTI using type IDs. More... | |
Protected Member Functions inherited from mlir::GenericProgramPoint | |
GenericProgramPoint (TypeID typeID) | |
Create an abstract program point with type identifier. More... | |
Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage | |
BaseStorage ()=default | |
This program point 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::GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > >::getValue().
|
overridevirtual |
Get a fused location of both blocks.
Implements mlir::GenericProgramPoint.
Definition at line 100 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::GenericProgramPointBase< CFGEdge, std::pair< Block *, Block * > >::getValue().
|
overridevirtual |
Print the blocks between the control-flow edge.
Implements mlir::GenericProgramPoint.
Definition at line 106 of file DeadCodeAnalysis.cpp.
References getFrom(), getTo(), and mlir::Block::print().