File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed
mlir/lib/Conversion/MemRefToLLVM Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -1711,6 +1711,10 @@ struct ViewOpLowering : public ConvertOpToLLVMPattern<memref::ViewOp> {
17111711 MemRefDescriptor sourceMemRef (adaptor.getSource ());
17121712 auto targetMemRef = MemRefDescriptor::poison (rewriter, loc, targetDescTy);
17131713
1714+ // Early exit for 0-D corner case.
1715+ if (viewMemRefType.getRank () == 0 )
1716+ return rewriter.replaceOp (viewOp, {targetMemRef}), success ();
1717+
17141718 // Field 1: Copy the allocated pointer, used for malloc/free.
17151719 Value allocatedPtr = sourceMemRef.allocatedPtr (rewriter, loc);
17161720 auto srcMemRefType = cast<MemRefType>(viewOp.getSource ().getType ());
@@ -1733,10 +1737,6 @@ struct ViewOpLowering : public ConvertOpToLLVMPattern<memref::ViewOp> {
17331737 rewriter, loc,
17341738 createIndexAttrConstant (rewriter, loc, indexType, offset));
17351739
1736- // Early exit for 0-D corner case.
1737- if (viewMemRefType.getRank () == 0 )
1738- return rewriter.replaceOp (viewOp, {targetMemRef}), success ();
1739-
17401740 // Fields 4 and 5: Update sizes and strides.
17411741 Value stride = nullptr , nextSize = nullptr ;
17421742 for (int i = viewMemRefType.getRank () - 1 ; i >= 0 ; --i) {
You can’t perform that action at this time.
0 commit comments