My Project
Public Member Functions | List of all members
mlir::DominanceInfo Class Reference

A class for computing basic dominance information. More...

#include <Dominance.h>

Inheritance diagram for mlir::DominanceInfo:
Inheritance graph
[legend]
Collaboration diagram for mlir::DominanceInfo:
Collaboration graph
[legend]

Public Member Functions

bool properlyDominates (Operation *a, Operation *b)
 Return true if operation A properly dominates operation B. More...
 
bool dominates (Operation *a, Operation *b)
 Return true if operation A dominates operation B. More...
 
bool properlyDominates (Value a, Operation *b)
 Return true if value A properly dominates operation B. More...
 
bool dominates (Value a, Operation *b)
 Return true if operation A dominates operation B. More...
 
bool dominates (Block *a, Block *b)
 Return true if the specified block A dominates block B. More...
 
bool properlyDominates (Block *a, Block *b)
 Return true if the specified block A properly dominates block B. More...
 
DominanceInfoNodegetNode (Block *a)
 Return the dominance node from the Region containing block A. More...
 
void updateDFSNumbers ()
 Update the internal DFS numbers for the dominance nodes. More...
 
- Public Member Functions inherited from mlir::detail::DominanceInfoBase< false >
 DominanceInfoBase (Operation *op)
 
 DominanceInfoBase (DominanceInfoBase &&)=default
 
 DominanceInfoBase (const DominanceInfoBase &)=delete
 
DominanceInfoBaseoperator= (DominanceInfoBase &&)=default
 
DominanceInfoBaseoperator= (const DominanceInfoBase &)=delete
 
void recalculate (Operation *op)
 Recalculate the dominance info. More...
 
DominanceInfoNodegetRootNode (Region *region)
 Get the root dominance node of the given region. More...
 

Additional Inherited Members

- Protected Types inherited from mlir::detail::DominanceInfoBase< false >
using super = DominanceInfoBase< IsPostDom >
 
- Protected Member Functions inherited from mlir::detail::DominanceInfoBase< false >
bool properlyDominates (Block *a, Block *b)
 Return true if the specified block A properly dominates block B. More...
 
- Protected Attributes inherited from mlir::detail::DominanceInfoBase< false >
DenseMap< Region *, std::unique_ptr< base > > dominanceInfos
 A mapping of regions to their base dominator tree. More...
 

Detailed Description

A class for computing basic dominance information.

Member Function Documentation

◆ dominates() [1/3]

bool mlir::DominanceInfo::dominates ( Operation a,
Operation b 
)
inline

Return true if operation A dominates operation B.

◆ dominates() [2/3]

bool mlir::DominanceInfo::dominates ( Value  a,
Operation b 
)
inline

Return true if operation A dominates operation B.

◆ dominates() [3/3]

bool mlir::DominanceInfo::dominates ( Block a,
Block b 
)
inline

Return true if the specified block A dominates block B.

◆ getNode()

DominanceInfoNode * DominanceInfo::getNode ( Block a)

Return the dominance node from the Region containing block A.

◆ properlyDominates() [1/3]

bool DominanceInfo::properlyDominates ( Operation a,
Operation b 
)

Return true if operation A properly dominates operation B.

◆ properlyDominates() [2/3]

bool DominanceInfo::properlyDominates ( Value  a,
Operation b 
)

Return true if value A properly dominates operation B.

◆ properlyDominates() [3/3]

bool mlir::DominanceInfo::properlyDominates ( Block a,
Block b 
)
inline

Return true if the specified block A properly dominates block B.

◆ updateDFSNumbers()

void DominanceInfo::updateDFSNumbers ( )

Update the internal DFS numbers for the dominance nodes.


The documentation for this class was generated from the following files: