MipsSERegisterInfo.h revision 71746220d3d1c3e8efba35038ac2ff14b4a4d3ae
18589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka//===-- MipsSERegisterInfo.h - Mips32/64 Register Information ---*- C++ -*-===// 28589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// 38589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// The LLVM Compiler Infrastructure 48589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// 58589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// This file is distributed under the University of Illinois Open Source 68589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// License. See LICENSE.TXT for details. 78589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// 88589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka//===----------------------------------------------------------------------===// 98589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// 108589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// This file contains the Mips32/64 implementation of the TargetRegisterInfo 118589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// class. 128589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka// 138589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka//===----------------------------------------------------------------------===// 148589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 158589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka#ifndef MIPSSEREGISTERINFO_H 168589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka#define MIPSSEREGISTERINFO_H 178589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 188589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka#include "MipsRegisterInfo.h" 198589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 208589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanakanamespace llvm { 218589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 228589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanakaclass MipsSERegisterInfo : public MipsRegisterInfo { 238589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanakapublic: 248589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka MipsSERegisterInfo(const MipsSubtarget &Subtarget, 258589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka const TargetInstrInfo &TII); 268589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 2771746220d3d1c3e8efba35038ac2ff14b4a4d3aeAkira Hatanaka void eliminateCallFramePseudoInstr(MachineFunction &MF, 2871746220d3d1c3e8efba35038ac2ff14b4a4d3aeAkira Hatanaka MachineBasicBlock &MBB, 2971746220d3d1c3e8efba35038ac2ff14b4a4d3aeAkira Hatanaka MachineBasicBlock::iterator I) const; 3071746220d3d1c3e8efba35038ac2ff14b4a4d3aeAkira Hatanaka 318589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanakaprivate: 328589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka virtual void eliminateFI(MachineBasicBlock::iterator II, unsigned OpNo, 338589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka int FrameIndex, uint64_t StackSize, 348589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka int64_t SPOffset) const; 358589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka}; 368589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 378589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka} // end namespace llvm 388589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka 398589010e3d1d5a902992a5039cffa9d4116982c5Akira Hatanaka#endif 40