summaryrefslogtreecommitdiff
path: root/mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp')
-rw-r--r--mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp4
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 =