X86::MMX_MOVD64from64rr -> X86::MMX_MOVQ64mr X86::MMX_MOVD64grr -> X86::MMX_MOVD64mr
These two entries were added in llvm-svn: 372770.
I think these two should be reversable.
Differential D122217
[X86] Remove TB_NO_REVERSE for 2 memory folding entries skan on Mar 22 2022, 2:28 AM. Authored by
Details X86::MMX_MOVD64from64rr -> X86::MMX_MOVQ64mr X86::MMX_MOVD64grr -> X86::MMX_MOVD64mr These two entries were added in llvm-svn: 372770.
Diff Detail
Unit Tests Event TimelineComment Actions These two entries were added by https://reviews.llvm.org/rGa7f27f357df8b199285b0d1882ea7eb47d39cd07 I am trying to reduce the gaps between tables in X86GenFoldTables.inc and X86InstrFoldTables.cpp, and this is one of the difference. Comment Actions Put the discussion link here Comment Actions I would argue that the MMX_MOVD64from64rr entry should fold to MMX_MOVQ64mr since it is one by shorter to encode. And that wouldn't be reversible since MMX_MOVD64from64rr is 64-bit mode instruction and MMX_MOVQ64mr isn't. For the other one I'm not sure what scenario it would make sense to unfold it. It would introduce an intermediate GPR register that didn't otherwise exist. But since store unfolding is never used, I guess It doesn't really matter. |
clang-format: please reformat the code
368 diff lines are omitted. See full path.