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][Vector] Support poison in vector.shuffle mask
This PR extends the existing poison support in https://mlir.llvm.org/docs/Dialects/UBOps/
by representing poison mask values in `vector.shuffle`. Similar to LLVM (see
https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/IR/Instructions.h#L1884)
this requires defining an integer value (`-1`) representing poison in the `vector.shuffle` mask.
The current implementation parses and prints `-1` for the poison value. I implemented a custom
parser/printer to use the `poison` keyword instead but I think it's an overkill to have to introduce
a hand-written parsers/printers for every operation supporting poison. I also explored adding new
flavors of `DenseIXArrayAttr` that could take an argument to represent the poison value, but I also
desisted as the resulting code was too complex. Happy to get feedback about this and improve the
assembly format as a follow-up.
0 commit comments