diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-07 23:04:56 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2010-07-07 23:04:56 +0000 |
commit | 5febd075df156408d97cc9737428b66b0aaa5129 (patch) | |
tree | bd99fb37e4b1f021b9f787346e53d39f083660df /lib/Target | |
parent | 03e2d44722c1ebd3953007db0579147b46efba18 (diff) | |
download | external_llvm-5febd075df156408d97cc9737428b66b0aaa5129.zip external_llvm-5febd075df156408d97cc9737428b66b0aaa5129.tar.gz external_llvm-5febd075df156408d97cc9737428b66b0aaa5129.tar.bz2 |
fix copies to/from GR8_ABCD_H even more
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107832 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r-- | lib/Target/X86/X86InstrInfo.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrInfo.cpp b/lib/Target/X86/X86InstrInfo.cpp index 91cec98..acd214e 100644 --- a/lib/Target/X86/X86InstrInfo.cpp +++ b/lib/Target/X86/X86InstrInfo.cpp @@ -1932,7 +1932,9 @@ bool X86InstrInfo::copyRegToReg(MachineBasicBlock &MBB, } else if (CommonRC == &X86::GR8RegClass) { // Copying to or from a physical H register on x86-64 requires a NOREX // move. Otherwise use a normal move. - if ((isHReg(DestReg) || isHReg(SrcReg)) && + if ((isHReg(DestReg) || isHReg(SrcReg) || + SrcRC == &X86::GR8_ABCD_HRegClass || + DestRC == &X86::GR8_ABCD_HRegClass) && TM.getSubtarget<X86Subtarget>().is64Bit()) Opc = X86::MOV8rr_NOREX; else |