MLIR  22.0.0git
Public Member Functions | Static Public Member Functions | Friends | List of all members
mlir::RegionBranchPoint Class Reference

This class represents a point being branched from in the methods of the RegionBranchOpInterface. More...

#include "mlir/Interfaces/ControlFlowInterfaces.h"

Public Member Functions

 RegionBranchPoint (RegionBranchTerminatorOpInterface predecessor)
 Creates a RegionBranchPoint that branches from the given terminator. More...
 
 RegionBranchPoint (std::nullptr_t)=delete
 Explicitly stops users from constructing with nullptr. More...
 
bool isParent () const
 Returns true if branching from the parent op. More...
 
OperationgetTerminatorPredecessorOrNull () const
 Returns the terminator if branching from a region. More...
 

Static Public Member Functions

static constexpr RegionBranchPoint parent ()
 Returns an instance of RegionBranchPoint representing the parent operation. More...
 

Friends

bool operator== (RegionBranchPoint lhs, RegionBranchPoint rhs)
 Returns true if the two branch points are equal. More...
 

Detailed Description

This class represents a point being branched from in the methods of the RegionBranchOpInterface.

One can branch from one of two kinds of places:

Definition at line 237 of file ControlFlowInterfaces.h.

Constructor & Destructor Documentation

◆ RegionBranchPoint() [1/2]

mlir::RegionBranchPoint::RegionBranchPoint ( RegionBranchTerminatorOpInterface  predecessor)
inline

Creates a RegionBranchPoint that branches from the given terminator.

Definition at line 373 of file ControlFlowInterfaces.h.

◆ RegionBranchPoint() [2/2]

mlir::RegionBranchPoint::RegionBranchPoint ( std::nullptr_t  )
delete

Explicitly stops users from constructing with nullptr.

Member Function Documentation

◆ getTerminatorPredecessorOrNull()

Operation* mlir::RegionBranchPoint::getTerminatorPredecessorOrNull ( ) const
inline

Returns the terminator if branching from a region.

A null pointer otherwise.

Definition at line 254 of file ControlFlowInterfaces.h.

Referenced by mlir::operator<<(), and printRegionEdgeName().

◆ isParent()

bool mlir::RegionBranchPoint::isParent ( ) const
inline

Returns true if branching from the parent op.

Definition at line 250 of file ControlFlowInterfaces.h.

Referenced by mlir::operator<<().

◆ parent()

static constexpr RegionBranchPoint mlir::RegionBranchPoint::parent ( )
inlinestaticconstexpr

Returns an instance of RegionBranchPoint representing the parent operation.

Definition at line 241 of file ControlFlowInterfaces.h.

Referenced by mlir::dataflow::AbstractDenseBackwardDataFlowAnalysis::processOperation(), and mlir::detail::verifyTypesAlongControlFlowEdges().

Friends And Related Function Documentation

◆ operator==

bool operator== ( RegionBranchPoint  lhs,
RegionBranchPoint  rhs 
)
friend

Returns true if the two branch points are equal.

Definition at line 257 of file ControlFlowInterfaces.h.


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