9 #ifndef MLIR_DIALECT_BUFFERIZATION_TRANSFORMS_ONESHOTMODULEBUFFERIZE_H
10 #define MLIR_DIALECT_BUFFERIZATION_TRANSFORMS_ONESHOTMODULEBUFFERIZE_H
17 namespace bufferization {
18 struct BufferizationStatistics;
19 class OneShotAnalysisState;
20 struct OneShotBufferizationOptions;
24 LogicalResult
analyzeModuleOp(ModuleOp moduleOp, OneShotAnalysisState &state,
25 BufferizationStatistics *statistics =
nullptr);
37 const OneShotBufferizationOptions &
options,
38 BufferizationStatistics *statistics =
nullptr);
49 const bufferization::OneShotBufferizationOptions &
options,
50 BufferizationStatistics *statistics =
nullptr);
static llvm::ManagedStatic< PassManagerOptions > options
LogicalResult runOneShotModuleBufferize(ModuleOp moduleOp, const bufferization::OneShotBufferizationOptions &options, BufferizationStatistics *statistics=nullptr)
Run One-Shot Module Bufferization on the given module.
LogicalResult analyzeModuleOp(ModuleOp moduleOp, OneShotAnalysisState &state, BufferizationStatistics *statistics=nullptr)
Analyze moduleOp and its nested ops.
void removeBufferizationAttributesInModule(ModuleOp moduleOp)
Remove bufferization attributes on every FuncOp arguments in the ModuleOp.
LogicalResult bufferizeModuleOp(ModuleOp moduleOp, const OneShotBufferizationOptions &options, BufferizationStatistics *statistics=nullptr)
Bufferize op and its nested ops that implement BufferizableOpInterface.
Include the generated interface declarations.