13#ifndef CIRCT_SUPPORT_PROCEDURALREGIONTRAIT_H
14#define CIRCT_SUPPORT_PROCEDURALREGIONTRAIT_H
17#include "mlir/IR/OpDefinition.h"
18#include "llvm/Support/LogicalResult.h"
37template <
typename ConcreteType>
41 return mlir::OpTrait::impl::verifyNRegions(op, 1);
46template <
typename ConcreteType>
50 return mlir::OpTrait::impl::verifyNRegions(op, 1);
55template <
typename ConcreteType>
65template <
typename ConcreteType>
Signals that an operation must not be in a procedural region.
static LogicalResult verifyTrait(Operation *op)
Signals that an operation's regions are non-procedural.
static LogicalResult verifyTrait(Operation *op)
Signals that an operation must not be in a non-procedural region.
static LogicalResult verifyTrait(Operation *op)
Signals that an operation's regions are procedural.
static LogicalResult verifyTrait(Operation *op)
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
LogicalResult verifyNotInNonProceduralRegion(Operation *op)
Returns success if the operation has no closer surrounding parent marked as non-procedural region tha...
LogicalResult verifyNotInProceduralRegion(Operation *op)
Returns success if the operation has no closer surrounding parent marked as procedural region than it...