[Mlir-commits] [mlir] [mlir] Fix crash in test type converter for 1->N result conversion (PR #201738)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jun 4 20:01:55 PDT 2026
https://github.com/lijinpei-amd created https://github.com/llvm/llvm-project/pull/201738
Use `results.append` instead of `results.assign`, preserving previous results.
Fixes https://github.com/llvm/llvm-project/issues/201521
>From 9cc67d97c8b560e4cf8f9b6bc59606bb641349e7 Mon Sep 17 00:00:00 2001
From: Li Jinpei <jinpli at amd.com>
Date: Fri, 5 Jun 2026 10:58:43 +0800
Subject: [PATCH] [mlir] Fix crash in test type converter for 1->N result
conversion
Use `results.append` instead of `results.assign`, preserving previous
results.
Fixes https://github.com/llvm/llvm-project/issues/201521
---
mlir/test/Transforms/test-legalizer.mlir | 6 ++++++
mlir/test/lib/Dialect/Test/TestPatterns.cpp | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/mlir/test/Transforms/test-legalizer.mlir b/mlir/test/Transforms/test-legalizer.mlir
index c074d6b80484b..96aeccfb7c161 100644
--- a/mlir/test/Transforms/test-legalizer.mlir
+++ b/mlir/test/Transforms/test-legalizer.mlir
@@ -302,6 +302,12 @@ func.func @caller() {
// -----
+// Regression test for https://github.com/llvm/llvm-project/issues/201521
+// CHECK-LABEL: func.func private @callee_multi_result(f64) -> (f64, i32, i32, f16, f16)
+func.func private @callee_multi_result(i64) -> (i64, i32, i32, f32)
+
+// -----
+
// CHECK: func.func @use_of_replaced_bbarg(
// CHECK-SAME: %[[arg0:.*]]: f64)
// CHECK: "test.valid"(%[[arg0]])
diff --git a/mlir/test/lib/Dialect/Test/TestPatterns.cpp b/mlir/test/lib/Dialect/Test/TestPatterns.cpp
index 55e72b57cfd1b..552a1a473c9fd 100644
--- a/mlir/test/lib/Dialect/Test/TestPatterns.cpp
+++ b/mlir/test/lib/Dialect/Test/TestPatterns.cpp
@@ -1531,7 +1531,7 @@ struct TestTypeConverter : public TypeConverter {
// Split F32 into F16,F16.
if (t.isF32()) {
- results.assign(2, Float16Type::get(t.getContext()));
+ results.append(2, Float16Type::get(t.getContext()));
return success();
}
More information about the Mlir-commits
mailing list