MLIR 22.0.0git
FuncConversions.h File Reference
#include "mlir/IR/PatternMatch.h"
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/STLExtras.h"

Go to the source code of this file.

Namespaces

namespace  mlir
 Include the generated interface declarations.

Functions

void mlir::populateCallOpTypeConversionPattern (RewritePatternSet &patterns, const TypeConverter &converter, PatternBenefit benefit=1)
 Add a pattern to the given pattern list to convert the operand and result types of a CallOp with the given type converter.
void mlir::populateBranchOpInterfaceTypeConversionPattern (RewritePatternSet &patterns, const TypeConverter &converter, function_ref< bool(BranchOpInterface branchOp, int idx)> shouldConvertBranchOperand=nullptr, PatternBenefit benefit=1)
 Add a pattern to the given pattern list to rewrite branch operations to use operands that have been legalized by the conversion framework.
bool mlir::isLegalForBranchOpInterfaceTypeConversionPattern (Operation *op, const TypeConverter &converter)
 Return true if op is a BranchOpInterface op whose operands are all legal according to converter.
void mlir::populateReturnOpTypeConversionPattern (RewritePatternSet &patterns, const TypeConverter &converter, PatternBenefit benefit=1)
 Add a pattern to the given pattern list to rewrite return ops to use operands that have been legalized by the conversion framework.
bool mlir::isLegalForReturnOpTypeConversionPattern (Operation *op, const TypeConverter &converter, bool returnOpAlwaysLegal=false)
 For ReturnLike ops (except return), return True.
bool mlir::isNotBranchOpInterfaceOrReturnLikeOp (Operation *op)
 Return true if op is neither BranchOpInterface nor ReturnLike.