The legalizer produces a lot of these, and they make reading legalized
MIR annoying. For some reason, this does seem to sometimes introduce
copies of implicit def, which is dumb.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Could this pessimize code generation? If you have multiple G_IMPLICIT_DEFs, you can push them down close to their respective user and just have different undef register sources in each of those places.
With CSE'd G_IMPLICIT_DEF, they all end up using the same value, i.e. we potentially end up having to keep a register alive over a long interval.
Comment Actions
Before scheduling/RA, these are all erased and the use instructions see a register with the undef flag so liveness shouldn't be a concern. There are a number of places where the instruction count matters, and I would expect this to help since it reduces that