[Mlir-commits] [mlir] [mlir][ArmSME] Add arm_sme.move_tile_slice_to_vector op (PR #67652)

Cullen Rhodes llvmlistbot at llvm.org
Thu Sep 28 03:06:00 PDT 2023


================
@@ -402,6 +402,48 @@ struct MoveVectorToTileSliceToArmSMELowering
   }
 };
 
+/// Lower `arm_sme.move_tile_slice_to_vector` to SME intrinsics. Only horizontal
+/// tile slices are currently supported.
+struct MoveTileSliceToVectorArmSMELowering
+    : public ConvertOpToLLVMPattern<arm_sme::MoveTileSliceToVectorOp> {
+  using ConvertOpToLLVMPattern<
+      arm_sme::MoveTileSliceToVectorOp>::ConvertOpToLLVMPattern;
+
+  LogicalResult
+  matchAndRewrite(arm_sme::MoveTileSliceToVectorOp moveTileSliceToVector,
+                  OpAdaptor,
+                  ConversionPatternRewriter &rewriter) const override {
+    auto loc = moveTileSliceToVector.getLoc();
+    auto sliceType = moveTileSliceToVector.getResult().getType();
----------------
c-rhodes wrote:

add a `getResultVectorType` method?
```suggestion
    auto sliceType = moveTileSliceToVector.getResultVectorType();
```

https://github.com/llvm/llvm-project/pull/67652


More information about the Mlir-commits mailing list