[llvm-commits] [llvm] r69335 - /llvm/trunk/lib/Target/X86/X86InstrInfo.cpp
Dan Gohman
gohman at apple.com
Thu Apr 16 17:43:09 PDT 2009
Author: djg
Date: Thu Apr 16 19:43:09 2009
New Revision: 69335
URL: http://llvm.org/viewvc/llvm-project?rev=69335&view=rev
Log:
Don't use MOV8rr_NOREX on x86-32. It doesn't actually hurt anything at
present, but it's inconsistent.
Modified:
llvm/trunk/lib/Target/X86/X86InstrInfo.cpp
Modified: llvm/trunk/lib/Target/X86/X86InstrInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrInfo.cpp?rev=69335&r1=69334&r2=69335&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrInfo.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86InstrInfo.cpp Thu Apr 16 19:43:09 2009
@@ -1664,9 +1664,10 @@
} else if (DestRC == &X86::GR16RegClass) {
Opc = X86::MOV16rr;
} else if (DestRC == &X86::GR8RegClass) {
- // Copying two or from a physical H register requires a NOREX move.
- // Otherwise use a normal move.
- if (isHReg(DestReg) || isHReg(SrcReg))
+ // Copying two or from a physical H register on x86-64 requires a NOREX
+ // move. Otherwise use a normal move.
+ if ((isHReg(DestReg) || isHReg(SrcReg)) &&
+ TM.getSubtarget<X86Subtarget>().is64Bit())
Opc = X86::MOV8rr_NOREX;
else
Opc = X86::MOV8rr;
More information about the llvm-commits
mailing list