llvm-project
336b2909 - [RISCV] Use a DAG combine to prune pointless vrgather.vi (#135392)

Commit
1 year ago
[RISCV] Use a DAG combine to prune pointless vrgather.vi (#135392) If the vrgather.vi is preceeded by a vmv.v.x which writes a superset of the lanes writen by the vrgather, and the vrgather has no passthru, then the vrgather has no semantic effect. This is the start of a mini-series of patches around rewriting vrgather.vi/vx preceeded by vmv.v.x, vfmf.v.f, vmv.s.x, etc... Starting with the simplest, but also lowest impact. One point I'd like a second oppinion on is the out of bounds semenatic change. As far as I can tell, all the indices are in bounds by construction. The doc change is as much as I couldn't figure out how to test the alternative as anything else.
Author
Parents
Loading