cornell-zhang/hcl-dialect

[Op] Semi-affine modulo operation is not suppoted in MLIR

Opened this issue · 2 comments

As the title says, sometimes we may get the following indices after we outline and parameterize the operation, but it is not yet supported by MLIR.

%0 = affine.load %arg0[%arg6, %arg7 mod symbol(%arg5), %arg8, %arg9] {from = "layer2_0_avgpool"} : memref<1x32x16x16xf32, #map0>

It throws the error.

error: semi-affine expressions (modulo by non-const) are not supported

Similar issue in IREE project:
iree-org/iree#9279

Currently we can only rewrite this kind of affine.load to memref.load