MC/X86: Strip spurious operands from TAILJMPr64 as we do for CALL64r and

CALL64pcrel32, for the same reason.

llvm-svn: 104116
This commit is contained in:
Daniel Dunbar 2010-05-19 08:07:12 +00:00
parent daeca2d156
commit b243dfb085

View File

@ -364,9 +364,11 @@ void X86MCInstLower::Lower(const MachineInstr *MI, MCInst &OutMI) const {
LowerUnaryToTwoAddr(OutMI, X86::XOR32rr); // MOV32r0 -> XOR32rr
break;
// CALL64r, CALL64pcrel32 - These instructions have register inputs modeled as
// normal uses instead of implicit uses. As such, truncate off all but the
// first operand (the callee). FIXME: Change isel.
// TAILJMPr, TAILJMPr64, CALL64r, CALL64pcrel32 - These instructions have
// register inputs modeled as normal uses instead of implicit uses. As such,
// truncate off all but the first operand (the callee). FIXME: Change isel.
case X86::TAILJMPr:
case X86::TAILJMPr64:
case X86::CALL64r:
case X86::CALL64pcrel32: {
unsigned Opcode = OutMI.getOpcode();