diff options
author | Hal Finkel <hfinkel@anl.gov> | 2015-01-13 18:25:05 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2015-01-13 18:25:05 +0000 |
commit | 63fb9281092a475a5d77b52f041efb4d0aa2a26f (patch) | |
tree | 8388aeaf34312f2566a7c2b494c05dd5e6342a42 /llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp | |
parent | 4a2d333982e9a9b8db9404d65470c5925a6f19b7 (diff) | |
download | llvm-63fb9281092a475a5d77b52f041efb4d0aa2a26f.zip llvm-63fb9281092a475a5d77b52f041efb4d0aa2a26f.tar.gz llvm-63fb9281092a475a5d77b52f041efb4d0aa2a26f.tar.bz2 |
Revert "r225808 - [PowerPC] Add StackMap/PatchPoint support"
Reverting this while I investiage buildbot failures (segfaulting in
GetCostForDef at ScheduleDAGRRList.cpp:314).
llvm-svn: 225811
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp | 40 |
1 files changed, 4 insertions, 36 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp index aa0da7a..9b9966f 100644 --- a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp +++ b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp @@ -99,14 +99,6 @@ PPCRegisterInfo::getPointerRegClass(const MachineFunction &MF, unsigned Kind) const MCPhysReg* PPCRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const { - if (MF->getFunction()->getCallingConv() == CallingConv::AnyReg) { - if (Subtarget.hasVSX()) - return CSR_64_AllRegs_VSX_SaveList; - if (Subtarget.hasAltivec()) - return CSR_64_AllRegs_Altivec_SaveList; - return CSR_64_AllRegs_SaveList; - } - if (Subtarget.isDarwinABI()) return Subtarget.isPPC64() ? (Subtarget.hasAltivec() ? CSR_Darwin64_Altivec_SaveList : @@ -125,14 +117,6 @@ PPCRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const { const uint32_t* PPCRegisterInfo::getCallPreservedMask(CallingConv::ID CC) const { - if (CC == CallingConv::AnyReg) { - if (Subtarget.hasVSX()) - return CSR_64_AllRegs_VSX_RegMask; - if (Subtarget.hasAltivec()) - return CSR_64_AllRegs_Altivec_RegMask; - return CSR_64_AllRegs_RegMask; - } - if (Subtarget.isDarwinABI()) return Subtarget.isPPC64() ? (Subtarget.hasAltivec() ? CSR_Darwin64_Altivec_RegMask : @@ -154,14 +138,6 @@ PPCRegisterInfo::getNoPreservedMask() const { return CSR_NoRegs_RegMask; } -void PPCRegisterInfo::adjustStackMapLiveOutMask(uint32_t *Mask) const { - unsigned PseudoRegs[] = { PPC::ZERO, PPC::ZERO8, PPC::RM }; - for (unsigned i = 0, ie = array_lengthof(PseudoRegs); i != ie; ++i) { - unsigned Reg = PseudoRegs[i]; - Mask[Reg / 32] &= ~(1u << (Reg % 32)); - } -} - BitVector PPCRegisterInfo::getReservedRegs(const MachineFunction &MF) const { BitVector Reserved(getNumRegs()); const PPCFrameLowering *PPCFI = static_cast<const PPCFrameLowering *>( @@ -724,10 +700,7 @@ static unsigned getOffsetONFromFION(const MachineInstr &MI, // Take into account whether it's an add or mem instruction unsigned OffsetOperandNo = (FIOperandNum == 2) ? 1 : 2; if (MI.isInlineAsm()) - OffsetOperandNo = FIOperandNum - 1; - else if (MI.getOpcode() == TargetOpcode::STACKMAP || - MI.getOpcode() == TargetOpcode::PATCHPOINT) - OffsetOperandNo = FIOperandNum + 1; + OffsetOperandNo = FIOperandNum-1; return OffsetOperandNo; } @@ -799,8 +772,7 @@ PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II, // If the instruction is not present in ImmToIdxMap, then it has no immediate // form (and must be r+r). - bool noImmForm = !MI.isInlineAsm() && OpC != TargetOpcode::STACKMAP && - OpC != TargetOpcode::PATCHPOINT && !ImmToIdxMap.count(OpC); + bool noImmForm = !MI.isInlineAsm() && !ImmToIdxMap.count(OpC); // Now add the frame object offset to the offset from r1. int Offset = MFI->getObjectOffset(FrameIndex); @@ -824,10 +796,8 @@ PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II, // only "std" to a stack slot that is at least 4-byte aligned, but it can // happen in invalid code. assert(OpC != PPC::DBG_VALUE && - "This should be handled in a target-independent way"); - if (!noImmForm && ((isInt<16>(Offset) && (!isIXAddr || (Offset & 3) == 0)) || - OpC == TargetOpcode::STACKMAP || - OpC == TargetOpcode::PATCHPOINT)) { + "This should be handle in a target independent way"); + if (!noImmForm && isInt<16>(Offset) && (!isIXAddr || (Offset & 3) == 0)) { MI.getOperand(OffsetOperandNo).ChangeToImmediate(Offset); return; } @@ -1038,8 +1008,6 @@ bool PPCRegisterInfo::isFrameOffsetLegal(const MachineInstr *MI, Offset += MI->getOperand(OffsetOperandNo).getImm(); return MI->getOpcode() == PPC::DBG_VALUE || // DBG_VALUE is always Reg+Imm - MI->getOpcode() == TargetOpcode::STACKMAP || - MI->getOpcode() == TargetOpcode::PATCHPOINT || (isInt<16>(Offset) && (!usesIXAddr(*MI) || (Offset & 3) == 0)); } |