#include "mlir/Dialect/MemRef/Transforms/AllocationOpInterfaceImpl.h"
#include "mlir/Dialect/Bufferization/IR/AllocationOpInterface.h"
#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
#include "mlir/Dialect/MemRef/IR/MemRef.h"
#include "mlir/IR/Dialect.h"
#include "mlir/IR/Operation.h"
usingnamespacemlir;
namespace {
struct DefaultAllocationInterface
: public bufferization::AllocationOpInterface::ExternalModel<
DefaultAllocationInterface, memref::AllocOp> { … };
struct DefaultAutomaticAllocationHoistingInterface
: public bufferization::AllocationOpInterface::ExternalModel<
DefaultAutomaticAllocationHoistingInterface, memref::AllocaOp> { … };
struct DefaultReallocationInterface
: public bufferization::AllocationOpInterface::ExternalModel<
DefaultAllocationInterface, memref::ReallocOp> { … };
}
void mlir::memref::registerAllocationOpInterfaceExternalModels(
DialectRegistry ®istry) { … }