diff options
Diffstat (limited to 'mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp')
| -rw-r--r-- | mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp b/mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp index 2b7ac4b529cf..39532d34f616 100644 --- a/mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp +++ b/mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp @@ -167,7 +167,9 @@ void mlir::populateMemRefToEmitCTypeConversion(TypeConverter &typeConverter) { typeConverter.addConversion( [&](MemRefType memRefType) -> std::optional<Type> { if (!memRefType.hasStaticShape() || - !memRefType.getLayout().isIdentity() || memRefType.getRank() == 0) { + !memRefType.getLayout().isIdentity() || memRefType.getRank() == 0 || + llvm::any_of(memRefType.getShape(), + [](int64_t dim) { return dim == 0; })) { return {}; } Type convertedElementType = |
