MipsSERegisterInfo.h revision 261991
1//===-- MipsSERegisterInfo.h - Mips32/64 Register Information ---*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file contains the Mips32/64 implementation of the TargetRegisterInfo 11// class. 12// 13//===----------------------------------------------------------------------===// 14 15#ifndef MIPSSEREGISTERINFO_H 16#define MIPSSEREGISTERINFO_H 17 18#include "MipsRegisterInfo.h" 19 20namespace llvm { 21class MipsSEInstrInfo; 22 23class MipsSERegisterInfo : public MipsRegisterInfo { 24public: 25 MipsSERegisterInfo(const MipsSubtarget &Subtarget); 26 27 bool requiresRegisterScavenging(const MachineFunction &MF) const; 28 29 bool requiresFrameIndexScavenging(const MachineFunction &MF) const; 30 31 virtual const TargetRegisterClass *intRegClass(unsigned Size) const; 32 33private: 34 virtual void eliminateFI(MachineBasicBlock::iterator II, unsigned OpNo, 35 int FrameIndex, uint64_t StackSize, 36 int64_t SPOffset) const; 37}; 38 39} // end namespace llvm 40 41#endif 42