LLVM 20.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]

Public Member Functions

 AVRMachineFunctionInfo (const Function &F, const TargetSubtargetInfo *STI)
 
MachineFunctionInfoclone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
 Make a functionally equivalent copy of this MachineFunctionInfo in MF.
 
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.
 
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 ()
 
virtual MachineFunctionInfoclone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const
 Make a functionally equivalent copy of this MachineFunctionInfo in MF.
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::MachineFunctionInfo
template<typename FuncInfoTy , typename SubtargetTy = TargetSubtargetInfo>
static FuncInfoTy * create (BumpPtrAllocator &Allocator, const Function &F, const SubtargetTy *STI)
 Factory function: default behavior is to call new using the supplied allocator.
 
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()

llvm::AVRMachineFunctionInfo::AVRMachineFunctionInfo ( const Function F,
const TargetSubtargetInfo STI 
)
inline

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 60 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 69 of file AVRMachineFunctionInfo.h.

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

◆ getHasSpills()

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

Definition at line 66 of file AVRMachineFunctionInfo.h.

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

◆ getHasStackArgs()

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

Definition at line 72 of file AVRMachineFunctionInfo.h.

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

◆ getVarArgsFrameIndex()

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

Definition at line 86 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 76 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 81 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 70 of file AVRMachineFunctionInfo.h.

References B.

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

◆ setHasSpills()

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

Definition at line 67 of file AVRMachineFunctionInfo.h.

References B.

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

◆ setHasStackArgs()

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

Definition at line 73 of file AVRMachineFunctionInfo.h.

References B.

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

◆ setVarArgsFrameIndex()

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

Definition at line 87 of file AVRMachineFunctionInfo.h.

References Idx.


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