#include "mlir/Dialect/Vector/Transforms/BufferizableOpInterfaceImpl.h"
#include "mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h"
#include "mlir/Dialect/Bufferization/IR/Bufferization.h"
#include "mlir/Dialect/Bufferization/IR/DstBufferizableOpInterfaceImpl.h"
#include "mlir/Dialect/Vector/IR/VectorOps.h"
#include "mlir/IR/Dialect.h"
#include "mlir/IR/Operation.h"
usingnamespacemlir;
usingnamespacemlir::bufferization;
usingnamespacemlir::vector;
namespace mlir {
namespace vector {
namespace {
struct TransferReadOpInterface
: public BufferizableOpInterface::ExternalModel<TransferReadOpInterface,
vector::TransferReadOp> { … };
struct TransferWriteOpInterface
: public DstBufferizableOpInterfaceExternalModel<TransferWriteOpInterface,
vector::TransferWriteOp> { … };
struct GatherOpInterface
: public BufferizableOpInterface::ExternalModel<GatherOpInterface,
vector::GatherOp> { … };
struct MaskOpInterface
: public BufferizableOpInterface::ExternalModel<MaskOpInterface,
vector::MaskOp> { … };
struct YieldOpInterface
: public BufferizableOpInterface::ExternalModel<YieldOpInterface,
vector::YieldOp> { … };
}
}
}
void mlir::vector::registerBufferizableOpInterfaceExternalModels(
DialectRegistry ®istry) { … }