[llvm-commits] [llvm] r105986 - /llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp

Dale Johannesen dalej at apple.com
Mon Jun 14 20:13:49 PDT 2010


Author: johannes
Date: Mon Jun 14 22:13:49 2010
New Revision: 105986

URL: http://llvm.org/viewvc/llvm-project?rev=105986&view=rev
Log:
The form of BuildMI used for TAILJMPr was changing the register
containing the target address, an input, into an output.  I don't
think this actually broke anything on x86 (it does on ARM), but
it's wrong.


Modified:
    llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp

Modified: llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp?rev=105986&r1=105985&r2=105986&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86RegisterInfo.cpp Mon Jun 14 22:13:49 2010
@@ -1279,9 +1279,11 @@
       for (unsigned i = 0; i != 5; ++i)
         MIB.addOperand(MBBI->getOperand(i));
     } else if (RetOpcode == X86::TCRETURNri64) {
-      BuildMI(MBB, MBBI, DL, TII.get(X86::TAILJMPr64), JumpTarget.getReg());
+      BuildMI(MBB, MBBI, DL, TII.get(X86::TAILJMPr64)).
+        addReg(JumpTarget.getReg(), JumpTarget.getTargetFlags());
     } else {
-      BuildMI(MBB, MBBI, DL, TII.get(X86::TAILJMPr), JumpTarget.getReg());
+      BuildMI(MBB, MBBI, DL, TII.get(X86::TAILJMPr)).
+        addReg(JumpTarget.getReg(), JumpTarget.getTargetFlags());
     }
 
     MachineInstr *NewMI = prior(MBBI);





More information about the llvm-commits mailing list