From: Chris Lattner Date: Sat, 28 Dec 2002 20:32:54 +0000 (+0000) Subject: Changes to match new MRegisterInfo api X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=128aff4f9502a99af3573b98eb254490b3137646;p=oota-llvm.git Changes to match new MRegisterInfo api git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5187 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86RegisterInfo.h b/lib/Target/X86/X86RegisterInfo.h index bd1bf30a458..343f1c6d513 100644 --- a/lib/Target/X86/X86RegisterInfo.h +++ b/lib/Target/X86/X86RegisterInfo.h @@ -1,4 +1,4 @@ -//===- X86RegisterInfo.h - X86 Register Information Impl ----------*-C++-*-===// +//===- X86RegisterInfo.h - X86 Register Information Impl --------*- C++ -*-===// // // This file contains the X86 implementation of the MRegisterInfo class. // @@ -14,38 +14,39 @@ class Type; struct X86RegisterInfo : public MRegisterInfo { X86RegisterInfo(); - void storeReg2RegOffset(MachineBasicBlock &MBB, - MachineBasicBlock::iterator &MBBI, - unsigned SrcReg, unsigned DestReg, unsigned ImmOffset, - const TargetRegisterClass *RC) const; + const unsigned* getCalleeSaveRegs() const; - void loadRegOffset2Reg(MachineBasicBlock &MBB, - MachineBasicBlock::iterator &MBBI, - unsigned DestReg, unsigned SrcReg, unsigned ImmOffset, - const TargetRegisterClass *RC) const; + /// Returns register class appropriate for input SSA register + /// + const TargetRegisterClass *getClassForReg(unsigned Reg) const; + const TargetRegisterClass* getRegClassForType(const Type* Ty) const; - void moveReg2Reg(MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, + /// Code Generation virtual methods... + void storeRegToStackSlot(MachineBasicBlock &MBB, + MachineBasicBlock::iterator &MBBI, + unsigned SrcReg, int FrameIndex, + const TargetRegisterClass *RC) const; + + void loadRegFromStackSlot(MachineBasicBlock &MBB, + MachineBasicBlock::iterator &MBBI, + unsigned DestReg, int FrameIndex, + const TargetRegisterClass *RC) const; + + void copyRegToReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, unsigned DestReg, unsigned SrcReg, const TargetRegisterClass *RC) const; - void moveImm2Reg(MachineBasicBlock &MBB, MachineBasicBlock::iterator &MBBI, - unsigned DestReg, unsigned Imm, - const TargetRegisterClass *RC) const; + void eliminateCallFramePseudoInstr(MachineFunction &MF, + MachineBasicBlock &MBB, + MachineBasicBlock::iterator &I) const; - unsigned getFramePointer() const; - unsigned getStackPointer() const; + void eliminateFrameIndex(MachineFunction &MF, + MachineBasicBlock::iterator &II) const; - const unsigned* getCalleeSaveRegs() const; - const unsigned* getCallerSaveRegs() const; + void processFunctionBeforeFrameFinalized(MachineFunction &MF) const; - void emitPrologue(MachineFunction &MF, unsigned numBytes) const; - void emitEpilogue(MachineBasicBlock &MBB, unsigned numBytes) const; - - /// Returns register class appropriate for input SSA register - /// - const TargetRegisterClass *getClassForReg(unsigned Reg) const; - - const TargetRegisterClass* getRegClassForType(const Type* Ty) const; + void emitPrologue(MachineFunction &MF) const; + void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const; }; #endif