|
MLIR 22.0.0git
|
Functions | |
| void | populateControlFlowToLLVMConversionPatterns (const LLVMTypeConverter &converter, RewritePatternSet &patterns) |
| Collect the patterns to convert from the ControlFlow dialect to LLVM. | |
| void | populateAssertToLLVMConversionPattern (const LLVMTypeConverter &converter, RewritePatternSet &patterns, bool abortOnFailure=true, SymbolTableCollection *symbolTables=nullptr) |
| Populate the cf.assert to LLVM conversion pattern. | |
| void | registerConvertControlFlowToLLVMInterface (DialectRegistry ®istry) |
| void | populateControlFlowToSPIRVPatterns (const SPIRVTypeConverter &typeConverter, RewritePatternSet &patterns) |
| Appends to a pattern list additional patterns for translating ControlFLow ops to SPIR-V ops. | |
| void | registerBufferDeallocationOpInterfaceExternalModels (DialectRegistry ®istry) |
| void | registerBufferizableOpInterfaceExternalModels (DialectRegistry ®istry) |
| void | populateCFStructuralTypeConversionsAndLegality (const TypeConverter &typeConverter, RewritePatternSet &patterns, ConversionTarget &target, PatternBenefit benefit=1) |
| Populates patterns for CF structural type conversions and sets up the provided ConversionTarget with the appropriate legality configuration for the ops to get converted properly. | |
| void | populateCFStructuralTypeConversions (const TypeConverter &typeConverter, RewritePatternSet &patterns, PatternBenefit benefit=1) |
| Similar to populateCFStructuralTypeConversionsAndLegality but does not populate the conversion target. | |
| void | populateCFStructuralTypeConversionTarget (const TypeConverter &typeConverter, ConversionTarget &target) |
| Updates the ConversionTarget with dynamic legality of CF operations based on the provided type converter. | |
| void mlir::cf::populateAssertToLLVMConversionPattern | ( | const LLVMTypeConverter & | converter, |
| RewritePatternSet & | patterns, | ||
| bool | abortOnFailure = true, | ||
| SymbolTableCollection * | symbolTables = nullptr ) |
Populate the cf.assert to LLVM conversion pattern.
If abortOnFailure is set to false, the program execution continues when a condition is unsatisfied.
Definition at line 247 of file ControlFlowToLLVM.cpp.
References mlir::patterns.
| void mlir::cf::populateCFStructuralTypeConversions | ( | const TypeConverter & | typeConverter, |
| RewritePatternSet & | patterns, | ||
| PatternBenefit | benefit = 1 ) |
Similar to populateCFStructuralTypeConversionsAndLegality but does not populate the conversion target.
Definition at line 151 of file StructuralTypeConversions.cpp.
References mlir::patterns.
Referenced by populateCFStructuralTypeConversionsAndLegality().
| void mlir::cf::populateCFStructuralTypeConversionsAndLegality | ( | const TypeConverter & | typeConverter, |
| RewritePatternSet & | patterns, | ||
| ConversionTarget & | target, | ||
| PatternBenefit | benefit = 1 ) |
Populates patterns for CF structural type conversions and sets up the provided ConversionTarget with the appropriate legality configuration for the ops to get converted properly.
A "structural" type conversion is one where the underlying ops are completely agnostic to the actual types involved and simply need to update their types. An example of this is cf.br – the cf.br op needs to update its types accordingly to the TypeConverter, but otherwise does not care what type conversions are happening.
Definition at line 164 of file StructuralTypeConversions.cpp.
References mlir::patterns, populateCFStructuralTypeConversions(), populateCFStructuralTypeConversionTarget(), and target.
| void mlir::cf::populateCFStructuralTypeConversionTarget | ( | const TypeConverter & | typeConverter, |
| ConversionTarget & | target ) |
Updates the ConversionTarget with dynamic legality of CF operations based on the provided type converter.
Definition at line 158 of file StructuralTypeConversions.cpp.
References target.
Referenced by populateCFStructuralTypeConversionsAndLegality().
| void mlir::cf::populateControlFlowToLLVMConversionPatterns | ( | const LLVMTypeConverter & | converter, |
| RewritePatternSet & | patterns ) |
Collect the patterns to convert from the ControlFlow dialect to LLVM.
The conversion patterns capture the LLVMTypeConverter by reference meaning the references have to remain alive during the entire pattern lifetime.
Note: This function does not populate the default cf.assert lowering. That is because some platforms have a custom cf.assert lowering. The default lowering can be populated with populateAssertToLLVMConversionPattern.
Definition at line 237 of file ControlFlowToLLVM.cpp.
References mlir::patterns.
| void mlir::cf::populateControlFlowToSPIRVPatterns | ( | const SPIRVTypeConverter & | typeConverter, |
| RewritePatternSet & | patterns ) |
Appends to a pattern list additional patterns for translating ControlFLow ops to SPIR-V ops.
Definition at line 108 of file ControlFlowToSPIRV.cpp.
References mlir::patterns.
| void mlir::cf::registerBufferDeallocationOpInterfaceExternalModels | ( | DialectRegistry & | registry | ) |
Definition at line 159 of file BufferDeallocationOpInterfaceImpl.cpp.
References mlir::DialectRegistry::addExtension().
Referenced by mlir::registerAllDialects().
| void mlir::cf::registerBufferizableOpInterfaceExternalModels | ( | DialectRegistry & | registry | ) |
Definition at line 61 of file BufferizableOpInterfaceImpl.cpp.
References mlir::DialectRegistry::addExtension().
Referenced by mlir::registerAllDialects().
| void mlir::cf::registerConvertControlFlowToLLVMInterface | ( | DialectRegistry & | registry | ) |
Definition at line 317 of file ControlFlowToLLVM.cpp.
References mlir::DialectRegistry::addExtension().
Referenced by mlir::registerAllExtensions().