[Mlir-commits] [mlir] [mlir][affine]if the result of a Pure operation that whose operands are dimensional identifiers, then their results are dimensional identifiers. (PR #123542)

Kunwar Grover llvmlistbot at llvm.org
Sun Jan 26 06:07:31 PST 2025


Groverkss wrote:

This would make:

```
affine.for %i = 0 to 100 {
   %i2 = arith.muli %i, %i
   affine.load[%i2]
}
```

valid right? But in reality, this loop isn't affine anymore. My understanding is that the result of affine.apply with only dimensional identifiers is always a valid dimension for a affine loop, because the operation restricts what it can do. Allowing any pure operation breaks this.

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


More information about the Mlir-commits mailing list