MLIR 22.0.0git
mlir::math Namespace Reference

Namespaces

namespace  impl

Classes

struct  ErfcPolynomialApproximation
struct  ErfPolynomialApproximation
struct  MathExpandOpsPassOptions
struct  MathExtendToSupportedTypesOptions

Functions

std::unique_ptr<::mlir::PasscreateMathExpandOpsPass ()
std::unique_ptr<::mlir::PasscreateMathExpandOpsPass (MathExpandOpsPassOptions options)
std::unique_ptr<::mlir::PasscreateMathExtendToSupportedTypes ()
std::unique_ptr<::mlir::PasscreateMathExtendToSupportedTypes (MathExtendToSupportedTypesOptions options)
std::unique_ptr<::mlir::PasscreateMathSincosFusionPass ()
std::unique_ptr<::mlir::PasscreateMathUpliftToFMA ()
void registerMathExpandOpsPass ()
void registerMathExpandOpsPassPass ()
void registerMathExtendToSupportedTypes ()
void registerMathExtendToSupportedTypesPass ()
void registerMathSincosFusionPass ()
void registerMathSincosFusionPassPass ()
void registerMathUpliftToFMA ()
void registerMathUpliftToFMAPass ()
void registerMathPasses ()
void populateExpansionPatterns (RewritePatternSet &patterns, ArrayRef< StringRef > opMnemonics={})
 Adds patterns to expand math operations into other more fundamental operations.
void populateExtendToSupportedTypesTypeConverter (TypeConverter &typeConverter, const SetVector< Type > &sourceTypes, Type targetType)
void populateExtendToSupportedTypesConversionTarget (ConversionTarget &target, TypeConverter &typeConverter)
void populateExtendToSupportedTypesPatterns (RewritePatternSet &patterns, const TypeConverter &typeConverter)

Function Documentation

◆ createMathExpandOpsPass() [1/2]

std::unique_ptr<::mlir::Pass > mlir::math::createMathExpandOpsPass ( )

Definition at line 98 of file ExpandOps.cpp.

References add, and b.

◆ createMathExpandOpsPass() [2/2]

std::unique_ptr<::mlir::Pass > mlir::math::createMathExpandOpsPass ( MathExpandOpsPassOptions options)

Definition at line 102 of file ExpandOps.cpp.

◆ createMathExtendToSupportedTypes() [1/2]

std::unique_ptr<::mlir::Pass > mlir::math::createMathExtendToSupportedTypes ( )

Definition at line 197 of file ExtendToSupportedTypes.cpp.

◆ createMathExtendToSupportedTypes() [2/2]

std::unique_ptr<::mlir::Pass > mlir::math::createMathExtendToSupportedTypes ( MathExtendToSupportedTypesOptions options)

Definition at line 201 of file ExtendToSupportedTypes.cpp.

◆ createMathSincosFusionPass()

std::unique_ptr<::mlir::Pass > mlir::math::createMathSincosFusionPass ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 276 of file SincosFusion.cpp.

◆ createMathUpliftToFMA()

std::unique_ptr<::mlir::Pass > mlir::math::createMathUpliftToFMA ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 351 of file UpliftToFMA.cpp.

◆ populateExpansionPatterns()

void mlir::math::populateExpansionPatterns ( RewritePatternSet & patterns,
ArrayRef< StringRef > opMnemonics = {} )

Adds patterns to expand math operations into other more fundamental operations.

For example, hyperbolic functions are expanded into expressions using exp. If opMnemonics is empty then all available patterns will be added, otherwise only the patterns corresponding to ops in opMnemonics will be added to the set.

Definition at line 678 of file ExpandOps.cpp.

References convertAcoshOp(), convertAsinhOp(), convertAtanhOp(), convertCeilOp(), convertClampfOp(), convertCoshOp(), convertCtlzOp(), convertExp2fOp(), convertFmaFOp(), convertFPowIOp(), convertPowfOp(), convertRoundEvenOp(), convertRoundOp(), convertRsqrtOp(), convertSinhOp(), convertTanhOp(), convertTanOp(), and mlir::patterns.

◆ populateExtendToSupportedTypesConversionTarget()

void mlir::math::populateExtendToSupportedTypesConversionTarget ( ConversionTarget & target,
TypeConverter & typeConverter )

Definition at line 82 of file ExtendToSupportedTypes.cpp.

References mlir::Operation::getDialect(), and target.

◆ populateExtendToSupportedTypesPatterns()

void mlir::math::populateExtendToSupportedTypesPatterns ( RewritePatternSet & patterns,
const TypeConverter & typeConverter )

Definition at line 116 of file ExtendToSupportedTypes.cpp.

References mlir::patterns.

◆ populateExtendToSupportedTypesTypeConverter()

void mlir::math::populateExtendToSupportedTypesTypeConverter ( TypeConverter & typeConverter,
const SetVector< Type > & sourceTypes,
Type targetType )

Definition at line 53 of file ExtendToSupportedTypes.cpp.

References b, and target.

◆ registerMathExpandOpsPass()

void mlir::math::registerMathExpandOpsPass ( )
inline

Definition at line 369 of file Passes.h.

◆ registerMathExpandOpsPassPass()

void mlir::math::registerMathExpandOpsPassPass ( )
inline

Definition at line 376 of file Passes.h.

◆ registerMathExtendToSupportedTypes()

void mlir::math::registerMathExtendToSupportedTypes ( )
inline

Definition at line 390 of file Passes.h.

◆ registerMathExtendToSupportedTypesPass()

void mlir::math::registerMathExtendToSupportedTypesPass ( )
inline

Definition at line 397 of file Passes.h.

◆ registerMathPasses()

void mlir::math::registerMathPasses ( )
inline

Definition at line 453 of file Passes.h.

Referenced by mlir::registerAllPasses().

◆ registerMathSincosFusionPass()

void mlir::math::registerMathSincosFusionPass ( )
inline

Definition at line 411 of file Passes.h.

◆ registerMathSincosFusionPassPass()

void mlir::math::registerMathSincosFusionPassPass ( )
inline

Definition at line 418 of file Passes.h.

◆ registerMathUpliftToFMA()

void mlir::math::registerMathUpliftToFMA ( )
inline

Definition at line 432 of file Passes.h.

◆ registerMathUpliftToFMAPass()

void mlir::math::registerMathUpliftToFMAPass ( )
inline

Definition at line 439 of file Passes.h.