Don't use MOV8rr_NOREX on x86-32. It doesn't actually hurt anything at
present, but it's inconsistent. llvm-svn: 69335
This commit is contained in:
parent
71517c47e6
commit
74835ce1cb
|
@ -1664,9 +1664,10 @@ bool X86InstrInfo::copyRegToReg(MachineBasicBlock &MBB,
|
||||||
} else if (DestRC == &X86::GR16RegClass) {
|
} else if (DestRC == &X86::GR16RegClass) {
|
||||||
Opc = X86::MOV16rr;
|
Opc = X86::MOV16rr;
|
||||||
} else if (DestRC == &X86::GR8RegClass) {
|
} else if (DestRC == &X86::GR8RegClass) {
|
||||||
// Copying two or from a physical H register requires a NOREX move.
|
// Copying two or from a physical H register on x86-64 requires a NOREX
|
||||||
// Otherwise use a normal move.
|
// move. Otherwise use a normal move.
|
||||||
if (isHReg(DestReg) || isHReg(SrcReg))
|
if ((isHReg(DestReg) || isHReg(SrcReg)) &&
|
||||||
|
TM.getSubtarget<X86Subtarget>().is64Bit())
|
||||||
Opc = X86::MOV8rr_NOREX;
|
Opc = X86::MOV8rr_NOREX;
|
||||||
else
|
else
|
||||||
Opc = X86::MOV8rr;
|
Opc = X86::MOV8rr;
|
||||||
|
|
Loading…
Reference in New Issue