[llvm] [RISCV] Re-model RVV comparison instructions (PR #88868)

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 22 09:20:37 PDT 2024


preames wrote:

It snot clear to me that this change is a net positive.

Using m2 as an example, with the early clobber modeling the register allocator can pick any of 30 registers (for the vx forms).  With your proposed form, we only get 16 possible registers.  This is a net increase in register constraint and seems undesirable.  

The ability to reuse a source register is only useful if that source has no other use, for cases where the operand has other uses, this patch would be a regression.  

I think Craigs suggestion of a tied variant which is untied if needed might be reasonable.  We could also consider biting the bullet and implementing the actual overlap constraint rules - though that would need some pretty major evidence of benefit to be worth the work.  


https://github.com/llvm/llvm-project/pull/88868


More information about the llvm-commits mailing list