From: Chris Lattner Date: Wed, 15 Nov 2006 17:40:51 +0000 (+0000) Subject: Fix the PPC regressions last night X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=5e14b821cdab1fa42baeb2ed1f663597d8345824;p=oota-llvm.git Fix the PPC regressions last night git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31752 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/PowerPC/PPCInstr64Bit.td b/lib/Target/PowerPC/PPCInstr64Bit.td index a5d52fa8abf..3a590f25ecb 100644 --- a/lib/Target/PowerPC/PPCInstr64Bit.td +++ b/lib/Target/PowerPC/PPCInstr64Bit.td @@ -364,7 +364,7 @@ def STDX : XForm_8<31, 149, (ops G8RC:$rS, memrr:$dst), [(store G8RC:$rS, xaddr:$dst)]>, isPPC64, PPC970_DGroup_Cracked; -def STDU : DSForm_1<62, 1, (ops G8RC:$rS, memrix:$dst), +def STDU : DSForm_1<62, 1, (ops G8RC:$ea_res, G8RC:$rS, memrix:$dst), "stdu $rS, $dst", LdStSTD, []>, isPPC64; def STDUX : XForm_8<31, 181, (ops G8RC:$rS, memrr:$dst), diff --git a/lib/Target/PowerPC/PPCRegisterInfo.cpp b/lib/Target/PowerPC/PPCRegisterInfo.cpp index 329633bda58..1a19916a57c 100644 --- a/lib/Target/PowerPC/PPCRegisterInfo.cpp +++ b/lib/Target/PowerPC/PPCRegisterInfo.cpp @@ -418,11 +418,11 @@ eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, if (Old->getOpcode() == PPC::ADJCALLSTACKDOWN) { if (!Subtarget.isPPC64()) { BuildMI(MBB, I, PPC::LWZ, 2, PPC::R0).addImm(0).addReg(PPC::R31); - BuildMI(MBB, I, PPC::STWU, 3) + BuildMI(MBB, I, PPC::STWU, 3, PPC::R1) .addReg(PPC::R0).addImm(-Amount).addReg(PPC::R1); } else { BuildMI(MBB, I, PPC::LD, 2, PPC::X0).addImm(0).addReg(PPC::X31); - BuildMI(MBB, I, PPC::STDU, 3) + BuildMI(MBB, I, PPC::STDU, 3, PPC::X1) .addReg(PPC::X0).addImm(-Amount/4).addReg(PPC::X1); } } else { @@ -684,8 +684,8 @@ void PPCRegisterInfo::emitPrologue(MachineFunction &MF) const { BuildMI(MBB, MBBI, PPC::STWUX, 3) .addReg(PPC::R1).addReg(PPC::R1).addReg(PPC::R0); } else if (NumBytes <= 32768) { - BuildMI(MBB, MBBI, PPC::STWU, 3).addReg(PPC::R1).addImm(NegNumbytes) - .addReg(PPC::R1); + BuildMI(MBB, MBBI, PPC::STWU, 3, + PPC::R1).addReg(PPC::R1).addImm(NegNumbytes).addReg(PPC::R1); } else { BuildMI(MBB, MBBI, PPC::LIS, 1, PPC::R0).addImm(NegNumbytes >> 16); BuildMI(MBB, MBBI, PPC::ORI, 2, PPC::R0).addReg(PPC::R0) @@ -704,8 +704,8 @@ void PPCRegisterInfo::emitPrologue(MachineFunction &MF) const { BuildMI(MBB, MBBI, PPC::STDUX, 3) .addReg(PPC::X1).addReg(PPC::X1).addReg(PPC::X0); } else if (NumBytes <= 32768*4) { - BuildMI(MBB, MBBI, PPC::STDU, 3).addReg(PPC::X1).addImm(NegNumbytes/4) - .addReg(PPC::X1); + BuildMI(MBB, MBBI, PPC::STDU, 3, PPC::X1) + .addReg(PPC::X1).addImm(NegNumbytes/4).addReg(PPC::X1); } else { BuildMI(MBB, MBBI, PPC::LIS8, 1, PPC::X0).addImm(NegNumbytes >> 16); BuildMI(MBB, MBBI, PPC::ORI8, 2, PPC::X0).addReg(PPC::X0)