LLVM  15.0.0git
Public Member Functions | List of all members
llvm::AVRMachineFunctionInfo Class Reference

Contains AVR-specific information for each MachineFunction. More...

#include "Target/AVR/AVRMachineFunctionInfo.h"

Inheritance diagram for llvm::AVRMachineFunctionInfo:
Inheritance graph
[legend]
Collaboration diagram for llvm::AVRMachineFunctionInfo:
Collaboration graph
[legend]

Public Member Functions

 AVRMachineFunctionInfo ()
 
 AVRMachineFunctionInfo (MachineFunction &MF)
 
MachineFunctionInfoclone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
 Make a functionally equivalent copy of this MachineFunctionInfo in MF. More...
 
bool getHasSpills () const
 
void setHasSpills (bool B)
 
bool getHasAllocas () const
 
void setHasAllocas (bool B)
 
bool getHasStackArgs () const
 
void setHasStackArgs (bool B)
 
bool isInterruptOrSignalHandler () const
 Checks if the function is some form of interrupt service routine. More...
 
bool isInterruptHandler () const
 
bool isSignalHandler () const
 
unsigned getCalleeSavedFrameSize () const
 
void setCalleeSavedFrameSize (unsigned Bytes)
 
int getVarArgsFrameIndex () const
 
void setVarArgsFrameIndex (int Idx)
 
- Public Member Functions inherited from llvm::MachineFunctionInfo
virtual ~MachineFunctionInfo ()
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::MachineFunctionInfo
template<typename Ty >
static Ty * create (BumpPtrAllocator &Allocator, MachineFunction &MF)
 Factory function: default behavior is to call new using the supplied allocator. More...
 
template<typename Ty >
static Ty * create (BumpPtrAllocator &Allocator, const Ty &MFI)
 

Detailed Description

Contains AVR-specific information for each MachineFunction.

Definition at line 21 of file AVRMachineFunctionInfo.h.

Constructor & Destructor Documentation

◆ AVRMachineFunctionInfo() [1/2]

llvm::AVRMachineFunctionInfo::AVRMachineFunctionInfo ( )
inline

Definition at line 48 of file AVRMachineFunctionInfo.h.

◆ AVRMachineFunctionInfo() [2/2]

llvm::AVRMachineFunctionInfo::AVRMachineFunctionInfo ( MachineFunction MF)
inlineexplicit

Member Function Documentation

◆ clone()

MachineFunctionInfo* llvm::AVRMachineFunctionInfo::clone ( BumpPtrAllocator Allocator,
MachineFunction DestMF,
const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &  Src2DstMBB 
) const
inlineoverridevirtual

Make a functionally equivalent copy of this MachineFunctionInfo in MF.

This requires remapping MachineBasicBlock references from the original parent to values in the new function. Targets may assume that virtual register and frame index values are preserved in the new function.

Reimplemented from llvm::MachineFunctionInfo.

Definition at line 65 of file AVRMachineFunctionInfo.h.

References llvm::MachineFunction::cloneInfo().

◆ getCalleeSavedFrameSize()

unsigned llvm::AVRMachineFunctionInfo::getCalleeSavedFrameSize ( ) const
inline

◆ getHasAllocas()

bool llvm::AVRMachineFunctionInfo::getHasAllocas ( ) const
inline

Definition at line 74 of file AVRMachineFunctionInfo.h.

Referenced by llvm::AVRFrameLowering::hasFP().

◆ getHasSpills()

bool llvm::AVRMachineFunctionInfo::getHasSpills ( ) const
inline

Definition at line 71 of file AVRMachineFunctionInfo.h.

Referenced by llvm::AVRFrameLowering::hasFP().

◆ getHasStackArgs()

bool llvm::AVRMachineFunctionInfo::getHasStackArgs ( ) const
inline

Definition at line 77 of file AVRMachineFunctionInfo.h.

Referenced by llvm::AVRFrameLowering::hasFP().

◆ getVarArgsFrameIndex()

int llvm::AVRMachineFunctionInfo::getVarArgsFrameIndex ( ) const
inline

Definition at line 91 of file AVRMachineFunctionInfo.h.

◆ isInterruptHandler()

bool llvm::AVRMachineFunctionInfo::isInterruptHandler ( ) const
inline

◆ isInterruptOrSignalHandler()

bool llvm::AVRMachineFunctionInfo::isInterruptOrSignalHandler ( ) const
inline

Checks if the function is some form of interrupt service routine.

Definition at line 81 of file AVRMachineFunctionInfo.h.

References isInterruptHandler(), and isSignalHandler().

Referenced by llvm::AVRFrameLowering::emitEpilogue(), llvm::AVRFrameLowering::emitPrologue(), llvm::AVRRegisterInfo::getCalleeSavedRegs(), and llvm::restoreStatusRegister().

◆ isSignalHandler()

bool llvm::AVRMachineFunctionInfo::isSignalHandler ( ) const
inline

Definition at line 86 of file AVRMachineFunctionInfo.h.

Referenced by isInterruptOrSignalHandler().

◆ setCalleeSavedFrameSize()

void llvm::AVRMachineFunctionInfo::setCalleeSavedFrameSize ( unsigned  Bytes)
inline

◆ setHasAllocas()

void llvm::AVRMachineFunctionInfo::setHasAllocas ( bool  B)
inline

Definition at line 75 of file AVRMachineFunctionInfo.h.

References B.

Referenced by llvm::AVRFrameAnalyzer::runOnMachineFunction().

◆ setHasSpills()

void llvm::AVRMachineFunctionInfo::setHasSpills ( bool  B)
inline

Definition at line 72 of file AVRMachineFunctionInfo.h.

References B.

Referenced by llvm::AVRInstrInfo::storeRegToStackSlot().

◆ setHasStackArgs()

void llvm::AVRMachineFunctionInfo::setHasStackArgs ( bool  B)
inline

Definition at line 78 of file AVRMachineFunctionInfo.h.

References B.

Referenced by llvm::AVRFrameAnalyzer::runOnMachineFunction().

◆ setVarArgsFrameIndex()

void llvm::AVRMachineFunctionInfo::setVarArgsFrameIndex ( int  Idx)
inline

Definition at line 92 of file AVRMachineFunctionInfo.h.


The documentation for this class was generated from the following file: