// returning.
auto packedType =
getTypeConverter()->packFunctionResults(op.getOperandTypes());
+ if (!packedType) {
+ return rewriter.notifyMatchFailure(op, "could not convert result types");
+ }
Value packed = rewriter.create<LLVM::UndefOp>(loc, packedType);
for (auto [idx, operand] : llvm::enumerate(updatedOperands)) {
// BAREPTR: llvm.return {{.*}} : !llvm.struct<(ptr, ptr, i64, array<1 x i64>, array<1 x i64>)>
return %in : memref<?xi8>
}
+
+// -----
+
+// BAREPTR-LABEL: func @unconvertible_multiresult
+// BAREPTR-SAME: %{{.*}}: memref<?xf32>, %{{.*}}: memref<?xf32>) -> (memref<?xf32>, memref<?xf32>)
+func.func @unconvertible_multiresult(%arg0: memref<?xf32> , %arg1: memref<?xf32>) -> (memref<?xf32>, memref<?xf32>) {
+ return %arg0, %arg1 : memref<?xf32>, memref<?xf32>
+}