You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[mlir] Avoid folding index.remu and index.rems for 0 rhs
As discussed in #59714 (comment), the folder for the remainder operations should be resillient when the rhs is 0.
The file `IndexOps.cpp` was already checking for multiple divisions by zero, so I tried to stick to the code style from those checks.
Fixes#59714.
As a side note, is it correct that remainder operations are never optimized away? I would expect that the following code
```
func.func @remu_test() -> index {
%c3 = index.constant 2
%c0 = index.constant 1
%0 = index.remu %c3, %c0
return %0 : index
}
```
would be optimized to
```
func.func @remu_test() -> index {
return index.constant 0 : index
}
```
when called with `mlir-opt --convert-scf-to-openmp temp.mlir`, but maybe I'm misunderstanding something.
Reviewed By: Mogball
Differential Revision: https://reviews.llvm.org/D151476
0 commit comments