[Mlir-commits] [mlir] [mlir] Add emitRemark overload taking ArrayRef<Twine> (PR #217804)
lonely eagle
llvmlistbot at llvm.org
Thu Aug 27 09:47:53 PDT 2026
linuxlonelyeagle wrote:
before use this and after use this method.
* before
```
a.mlir:2:3: remark: WAR : [n0] -> { R0[d0, d1] -> W0[d0' = d1, d1' = d0] : 0 < d0 < n0 and d1 > d0 and 0 < d1 < n0; R0[d0, d1 = d0] -> W0[d0' = d0, d1' = d0] : 0 < d0 < n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: note: see current operation:
affine.for %arg2 = 0 to %arg1 {
affine.for %arg3 = 1 to %arg1 {
%0 = affine.load %arg0[%arg3, %arg2] : memref<?x?xf32>
%1 = affine.load %arg0[%arg2, %arg3 - 1] : memref<?x?xf32>
%2 = arith.addf %0, %0 : f32
affine.store %2, %arg0[%arg2, %arg3] : memref<?x?xf32>
}
}
a.mlir:2:3: remark: RAW : [n0] -> { W0[d0, d1] -> R0[d0' = d1, d1' = d0] : 0 < d0 < n0 and d1 > d0 and 0 < d1 < n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: note: see current operation:
affine.for %arg2 = 0 to %arg1 {
affine.for %arg3 = 1 to %arg1 {
%0 = affine.load %arg0[%arg3, %arg2] : memref<?x?xf32>
%1 = affine.load %arg0[%arg2, %arg3 - 1] : memref<?x?xf32>
%2 = arith.addf %0, %0 : f32
affine.store %2, %arg0[%arg2, %arg3] : memref<?x?xf32>
}
}
a.mlir:2:3: remark: RAW : [n0] -> { W0[d0, d1] -> R1[d0' = d0, d1' = 1 + d1] : 0 <= d0 < n0 and 0 < d1 <= -2 + n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: note: see current operation:
affine.for %arg2 = 0 to %arg1 {
affine.for %arg3 = 1 to %arg1 {
%0 = affine.load %arg0[%arg3, %arg2] : memref<?x?xf32>
%1 = affine.load %arg0[%arg2, %arg3 - 1] : memref<?x?xf32>
%2 = arith.addf %0, %0 : f32
affine.store %2, %arg0[%arg2, %arg3] : memref<?x?xf32>
}
```
* after use this
```
a.mlir:2:3: remark: WAR : [n0] -> { R0[d0, d1] -> W0[d0' = d1, d1' = d0] : 0 < d0 < n0 and d1 > d0 and 0 < d1 < n0; R0[d0, d1 = d0] -> W0[d0' = d0, d1' = d0] : 0 < d0 < n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: remark: RAW : [n0] -> { W0[d0, d1] -> R0[d0' = d1, d1' = d0] : 0 < d0 < n0 and d1 > d0 and 0 < d1 < n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: remark: RAW : [n0] -> { W0[d0, d1] -> R1[d0' = d0, d1' = 1 + d1] : 0 <= d0 < n0 and 0 < d1 <= -2 + n0 }
affine.for %i = 0 to %arg1 {
^
a.mlir:2:3: note: see current operation:
affine.for %arg2 = 0 to %arg1 {
affine.for %arg3 = 1 to %arg1 {
%0 = affine.load %arg0[%arg3, %arg2] : memref<?x?xf32>
%1 = affine.load %arg0[%arg2, %arg3 - 1] : memref<?x?xf32>
%2 = arith.addf %0, %0 : f32
affine.store %2, %arg0[%arg2, %arg3] : memref<?x?xf32>
}
}
```
I think this is what I actual needs. @matthias-springer
https://github.com/llvm/llvm-project/pull/217804
More information about the Mlir-commits
mailing list