#include "mlir/Dialect/Tensor/IR/ValueBoundsOpInterfaceImpl.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Interfaces/ValueBoundsOpInterface.h"
usingnamespacemlir;
namespace mlir {
namespace tensor {
namespace {
struct CastOpInterface
: public ValueBoundsOpInterface::ExternalModel<CastOpInterface, CastOp> { … };
struct DimOpInterface
: public ValueBoundsOpInterface::ExternalModel<DimOpInterface, DimOp> { … };
struct EmptyOpInterface
: public ValueBoundsOpInterface::ExternalModel<EmptyOpInterface, EmptyOp> { … };
struct ExtractSliceOpInterface
: public ValueBoundsOpInterface::ExternalModel<ExtractSliceOpInterface,
ExtractSliceOp> { … };
struct PadOpInterface
: public ValueBoundsOpInterface::ExternalModel<PadOpInterface, PadOp> { … };
struct RankOpInterface
: public ValueBoundsOpInterface::ExternalModel<RankOpInterface, RankOp> { … };
}
}
}
void mlir::tensor::registerValueBoundsOpInterfaceExternalModels(
DialectRegistry ®istry) { … }