// function. The implementation of the function can be either in the same module
// or in an externally linked library.
// This is a generic entry point for all LinalgOp, except for CopyOp and
-// IndexedGenericOp, for which omre specialized patterns are provided.
+// IndexedGenericOp, for which more specialized patterns are provided.
class LinalgOpToLibraryCallRewrite
: public OpInterfaceRewritePattern<LinalgOp> {
public:
if (isa<CopyOp>(op) || isa<IndexedGenericOp>(op))
return failure();
- // TODO: remove once index ops are supported.
- if (op.hasIndexSemantics())
- return failure();
-
auto libraryCallName = getLibraryCallSymbolRef(op, rewriter);
if (!libraryCallName)
return failure();
+ // TODO: Add support for more complex library call signatures that include
+ // indices or captured values.
rewriter.replaceOpWithNewOp<mlir::CallOp>(
op, libraryCallName.getValue(), TypeRange(),
createTypeCanonicalizedMemRefOperands(rewriter, op->getLoc(),