[PATCH] D27419: [X86][SSE] Consistently set MOVD/MOVQ load/store/move instructions to integer domain

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 6 04:06:41 PST 2016


RKSimon added a comment.

In https://reviews.llvm.org/D27419#614236, @craig.topper wrote:

> Should the ones that use FR32 and FR64 in their types stay in floating point domain? Doesn't that make them likely to be near floating point code?


It increases the likelihood that instructions that use the movd/movq will be in the float domain, but the movd/movq themselves will still be on the integer unit - often in cases where we should have been using movss/movsd.

A lot of this looks due to us missing so many of the movd/movq instruction enums from X86InstrInfo::getExecutionDomain/X86InstrInfo::setExecutionDomain - ideally we'd prune some of these first but I seem to recall it not being an easy task......


Repository:
  rL LLVM

https://reviews.llvm.org/D27419





More information about the llvm-commits mailing list