[Mlir-commits] [mlir] [mlir][Vector] Remove VectorLoadToMemrefLoadLowering and VectorStoreToMemrefStoreLowering (PR #121454)
Andrzej WarzyĆski
llvmlistbot at llvm.org
Thu Jan 2 11:36:42 PST 2025
================
@@ -3282,13 +3282,17 @@ func.func @load_0d(%memref : memref<200x100xf32>, %i : index, %j : index) -> vec
}
// CHECK-LABEL: func @load_0d
-// CHECK: %[[LOAD:.*]] = memref.load %{{.*}}[%{{.*}}, %{{.*}}]
-// CHECK: %[[VEC:.*]] = llvm.mlir.undef : vector<1xf32>
-// CHECK: %[[C0:.*]] = llvm.mlir.constant(0 : i32) : i32
-// CHECK: %[[INSERTED:.*]] = llvm.insertelement %[[LOAD]], %[[VEC]][%[[C0]] : i32] : vector<1xf32>
-// CHECK: %[[CAST:.*]] = builtin.unrealized_conversion_cast %[[INSERTED]] : vector<1xf32> to vector<f32>
-// CHECK: return %[[CAST]] : vector<f32>
-
+// CHECK: %[[T0:.*]] = builtin.unrealized_conversion_cast %{{.*}} : index to i64
+// CHECK: %[[T1:.*]] = builtin.unrealized_conversion_cast %{{.*}} : index to i64
+// CHECK: %[[T2:.*]] = builtin.unrealized_conversion_cast %{{.*}} : memref<200x100xf32> to !llvm.struct<(ptr, ptr, i64, array<2 x i64>, array<2 x i64>)>
+// CHECK: %[[T3:.*]] = llvm.extractvalue %[[T2]][1] : !llvm.struct<(ptr, ptr, i64, array<2 x i64>, array<2 x i64>)>
+// CHECK: %[[T4:.*]] = llvm.mlir.constant(100 : index) : i64
+// CHECK: %[[T5:.*]] = llvm.mul %[[T1]], %[[T4]] : i64
+// CHECK: %[[T6:.*]] = llvm.add %[[T5]], %[[T0]] : i64
+// CHECK: %[[T7:.*]] = llvm.getelementptr %[[T3]][%[[T6]]] : (!llvm.ptr, i64) -> !llvm.ptr, f32
+// CHECK: %[[T8:.*]] = llvm.load %[[T7]] {alignment = 4 : i64} : !llvm.ptr -> vector<1xf32>
+// CHECK: %[[T9:.*]] = builtin.unrealized_conversion_cast %[[T8]] : vector<1xf32> to vector<f32>
+// CHECK: return %[[T9]] : vector<f32>
----------------
banach-space wrote:
Please preserve "meaningful" LIT variable names. Same comment for other tests.
https://github.com/llvm/llvm-project/pull/121454
More information about the Mlir-commits
mailing list