diff options
author | Luke Lau <luke@igalia.com> | 2024-01-16 13:36:24 +0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-16 13:36:24 +0700 |
commit | 286a366d057112a112507b9e34c68d35b3b820f7 (patch) | |
tree | f9c53fbd832e5c0f73e14fb5d16d5ce9fe602915 /llvm/lib/CodeGen/MachineScheduler.cpp | |
parent | 44aa4d7d826f83777b99c07576cfb88e54266928 (diff) | |
download | llvm-286a366d057112a112507b9e34c68d35b3b820f7.zip llvm-286a366d057112a112507b9e34c68d35b3b820f7.tar.gz llvm-286a366d057112a112507b9e34c68d35b3b820f7.tar.bz2 |
[RISCV] Remove vmv.s.x and vmv.x.s lmul pseudo variants (#71501)
vmv.s.x and vmv.x.s ignore LMUL, so we can replace the PseudoVMV_S_X_MX
and
PseudoVMV_X_S_MX with just one pseudo each. These pseudos use the VR
register
class (just like the actual instruction), so we now only have TableGen
patterns for vectors of LMUL <= 1.
We now rely on the existing combines that shrink LMUL down to 1 for
vmv_s_x_vl (and vfmv_s_f_vl). We could look into removing these combines
later and just inserting the nodes with the correct type in a later
patch.
The test diff is due to the fact that a PseudoVMV_S_X/PsuedoVMV_X_S no
longer
carries any information about LMUL, so if it's the only vector pseudo
instruction in a block then it now defaults to LMUL=1.
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
0 files changed, 0 insertions, 0 deletions