Skip to content

Commit e3b0e3d

Browse files
committed
Update comments that reference removed operations
1 parent 36f675e commit e3b0e3d

File tree

4 files changed

+14
-19
lines changed

4 files changed

+14
-19
lines changed

mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ std::unique_ptr<Pass> createEnableArmStreamingPass(
2929
const ArmStreamingMode = ArmStreamingMode::Streaming,
3030
const ArmZaMode = ArmZaMode::Disabled);
3131

32-
/// Pass that replaces 'arm_sme.get_tile_id' ops with actual tiles.
32+
/// Pass that allocates tile IDs to ArmSME operations.
3333
std::unique_ptr<Pass> createTileAllocationPass();
3434

3535
//===----------------------------------------------------------------------===//

mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,20 +56,17 @@ struct GetTileConversion : public ConvertOpToLLVMPattern<arm_sme::GetTileOp> {
5656
///
5757
/// BEFORE:
5858
/// ```mlir
59-
/// %v = arm_sme.zero : vector<[4]x[4]xi32>
59+
/// %v = arm_sme.zero {tile_id = 0 : i32} : vector<[4]x[4]xi32>
6060
/// ```
6161
///
6262
/// AFTER:
6363
/// ```mlir
64-
/// %tile_id = arm_sme.get_tile_id : i32
65-
/// %zero_mask = arith.shli %c17_i32, %tile_id : i32
66-
/// "arm_sme.intr.zero"(%zero_mask) : (i32) -> ()
67-
/// %v = arm_sme.cast_tile_to_vector %tile_id : i32 to vector<[4]x[4]xi32>
64+
/// "arm_sme.intr.zero"() <{tile_mask = 17 : i32}> : () -> ()
65+
/// %v = arm_sme.materialize_ssa_tile : vector<[4]x[4]xi32>
6866
/// ```
6967
///
70-
/// The 'arm_sme.cast_tile_to_vector' (which models the return) and the
71-
/// 'arith.shli' (which generates the mask) will be folded away after tile
72-
/// allocation and canonization.
68+
/// The 'arm_sme.materialize_ssa_tile' (which models the return) will fold away
69+
/// once all ArmSME ops have been converted to LLVM intrinsics.
7370
struct ZeroOpConversion : public ConvertOpToLLVMPattern<arm_sme::ZeroOp> {
7471
using ConvertOpToLLVMPattern<arm_sme::ZeroOp>::ConvertOpToLLVMPattern;
7572

@@ -443,8 +440,8 @@ struct MoveTileSliceToVectorConversion
443440
///
444441
/// is converted to:
445442
///
446-
/// "arm_sme.intr.mopa"(%tile_id, %ptrue_s, %ptrue_s, %lhs, %rhs)
447-
/// : (i32, vector<[4]xi1>, vector<[4]xi1>, vector<[4]xf32>,
443+
/// "arm_sme.intr.mopa"(%ptrue_s, %ptrue_s, %lhs, %rhs) <{tile_id = 0 : i32}>
444+
/// : (vector<[4]xi1>, vector<[4]xi1>, vector<[4]xf32>,
448445
/// vector<[4]xf32>) -> ()
449446
///
450447
/// Currently only supports FMOPA and BFMOPA (non-widening).

mlir/lib/Conversion/ArmSMEToSCF/ArmSMEToSCF.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,7 @@ void getMemrefIndices(ValueRange indices, unsigned rank, Value tileSliceIndex,
6161
/// AFTER:
6262
/// ```mlir
6363
/// %ptrue_s = arith.constant dense<true> : vector<[4]xi1>
64-
/// %tile_id = arm_sme.get_tile_id : i32
65-
/// %tile = arm_sme.cast_tile_to_vector %tile_id : i32 to vector<[4]x[4]xi32>
64+
/// %tile = arm_sme.get_tile : vector<[4]x[4]xi32>
6665
/// %vscale = vector.vscale
6766
/// %c0 = arith.constant 0 : index
6867
/// %c1 = arith.constant 1 : index

mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,9 @@
66
//
77
//===----------------------------------------------------------------------===//
88
//
9-
// This pass allocates SME tiles at the 'func.func' op level for
10-
// 'arm_sme.get_tile_id' ops. It does this using a 16-bit tile mask that has a
11-
// bit for each 128-bit element tile (ZA0.Q-ZA15.Q), the smallest ZA tile
12-
// granule.
9+
// This pass allocates SME tiles at the 'func.func' op level for ArmSME
10+
// operations. It does this using a 16-bit tile mask that has a bit for each
11+
// 128-bit element tile (ZA0.Q-ZA15.Q), the smallest ZA tile granule.
1312
//
1413
// The 128-bit tiles overlap with other element tiles as follows (see section
1514
// B2.3.2 of SME spec [1]):
@@ -34,8 +33,8 @@
3433
// ZA7.D ZA7.Q, ZA15.Q
3534
//
3635
// The tiles in use are tracked via a function attribute 'arm_sme.tiles_in_use'
37-
// that is initalized during the first 'arm_sme.get_tile_id' rewrite and
38-
// updated on each subsequent rewrite.
36+
// that is initalized during the first tile allocation within a function and
37+
// updated on each subsequent allocation.
3938
//
4039
// [1] https://developer.arm.com/documentation/ddi0616/aa
4140
//

0 commit comments

Comments
 (0)