X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FTarget%2FX86%2FX86RegisterInfo.h;h=5b0c30cdde535dc06324e1dc1779a56e1848cbe6;hb=439b76730d40e8a8a95f2231bce95ff211a95ead;hp=6e240e2a0667f0ccab53afe0268c46ec249abe3c;hpb=b83b28697ccabfcb6b8ddbc73fb3c4554f6d17ce;p=oota-llvm.git diff --git a/lib/Target/X86/X86RegisterInfo.h b/lib/Target/X86/X86RegisterInfo.h index 6e240e2a066..5b0c30cdde5 100644 --- a/lib/Target/X86/X86RegisterInfo.h +++ b/lib/Target/X86/X86RegisterInfo.h @@ -14,18 +14,44 @@ class Type; struct X86RegisterInfo : public MRegisterInfo { X86RegisterInfo(); - MRegisterInfo::const_iterator const_regclass_begin() const; - MRegisterInfo::const_iterator const_regclass_end() const; + MRegisterInfo::const_iterator regclass_begin() const; + MRegisterInfo::const_iterator regclass_end() const; - void copyReg2PCRel(MachineBasicBlock *MBB, - MachineBasicBlock::iterator &MBBI, - unsigned SrcReg, unsigned ImmOffset, - unsigned dataSize) const; + MachineBasicBlock::iterator + storeReg2RegOffset(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned DestReg, unsigned SrcReg, + unsigned ImmOffset, unsigned dataSize) const; - void copyPCRel2Reg(MachineBasicBlock *MBB, - MachineBasicBlock::iterator &MBBI, - unsigned ImmOffset, unsigned DestReg, - unsigned dataSize) const; + MachineBasicBlock::iterator + loadRegOffset2Reg(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned DestReg, unsigned SrcReg, + unsigned ImmOffset, unsigned dataSize) const; + + MachineBasicBlock::iterator + moveReg2Reg(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned DestReg, unsigned SrcReg, unsigned dataSize) const; + + MachineBasicBlock::iterator + moveImm2Reg(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned DestReg, unsigned Imm, unsigned dataSize) const; + + unsigned getFramePointer() const; + unsigned getStackPointer() const; + + const unsigned* getCalleeSaveRegs() const; + const unsigned* getCallerSaveRegs() const; + + MachineBasicBlock::iterator emitPrologue(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned numBytes) const; + + MachineBasicBlock::iterator emitEpilogue(MachineBasicBlock *MBB, + MachineBasicBlock::iterator MBBI, + unsigned numBytes) const; /// Returns register class appropriate for input SSA register /// @@ -35,7 +61,6 @@ struct X86RegisterInfo : public MRegisterInfo { unsigned getNumRegClasses() const; - }; #endif