LLVM  8.0.1
Public Member Functions | List of all members
llvm::AVRSubtarget Class Reference

A specific AVR target MCU. More...

#include "Target/AVR/AVRSubtarget.h"

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

Public Member Functions

 AVRSubtarget (const Triple &TT, const std::string &CPU, const std::string &FS, const AVRTargetMachine &TM)
 Creates an AVR subtarget. More...
 
const AVRInstrInfogetInstrInfo () const override
 
const TargetFrameLoweringgetFrameLowering () const override
 
const AVRTargetLoweringgetTargetLowering () const override
 
const AVRSelectionDAGInfogetSelectionDAGInfo () const override
 
const AVRRegisterInfogetRegisterInfo () const override
 
void ParseSubtargetFeatures (StringRef CPU, StringRef FS)
 Parses a subtarget feature string, setting appropriate options. More...
 
AVRSubtargetinitializeSubtargetDependencies (StringRef CPU, StringRef FS, const TargetMachine &TM)
 
bool hasSRAM () const
 
bool hasJMPCALL () const
 
bool hasIJMPCALL () const
 
bool hasEIJMPCALL () const
 
bool hasADDSUBIW () const
 
bool hasSmallStack () const
 
bool hasMOVW () const
 
bool hasLPM () const
 
bool hasLPMX () const
 
bool hasELPM () const
 
bool hasELPMX () const
 
bool hasSPM () const
 
bool hasSPMX () const
 
bool hasDES () const
 
bool supportsRMW () const
 
bool supportsMultiplication () const
 
bool hasBREAK () const
 
bool hasTinyEncoding () const
 
unsigned getELFArch () const
 Gets the ELF architecture for the e_flags field of an ELF object file. More...
 

Detailed Description

A specific AVR target MCU.

Definition at line 32 of file AVRSubtarget.h.

Constructor & Destructor Documentation

◆ AVRSubtarget()

llvm::AVRSubtarget::AVRSubtarget ( const Triple TT,
const std::string &  CPU,
const std::string &  FS,
const AVRTargetMachine TM 
)

Creates an AVR subtarget.

Parameters
TTThe target triple.
CPUThe CPU to target.
FSThe feature string.
TMThe target machine.

Definition at line 31 of file AVRSubtarget.cpp.

References ParseSubtargetFeatures().

Member Function Documentation

◆ getELFArch()

unsigned llvm::AVRSubtarget::getELFArch ( ) const
inline

Gets the ELF architecture for the e_flags field of an ELF object file.

Definition at line 78 of file AVRSubtarget.h.

References assert().

◆ getFrameLowering()

const TargetFrameLowering* llvm::AVRSubtarget::getFrameLowering ( ) const
inlineoverride

◆ getInstrInfo()

const AVRInstrInfo* llvm::AVRSubtarget::getInstrInfo ( ) const
inlineoverride

◆ getRegisterInfo()

const AVRRegisterInfo* llvm::AVRSubtarget::getRegisterInfo ( ) const
inlineoverride

◆ getSelectionDAGInfo()

const AVRSelectionDAGInfo* llvm::AVRSubtarget::getSelectionDAGInfo ( ) const
inlineoverride

Definition at line 45 of file AVRSubtarget.h.

◆ getTargetLowering()

const AVRTargetLowering* llvm::AVRSubtarget::getTargetLowering ( ) const
inlineoverride

Definition at line 44 of file AVRSubtarget.h.

Referenced by llvm::AVRDAGToDAGISel::SelectInlineAsmMemoryOperand().

◆ hasADDSUBIW()

bool llvm::AVRSubtarget::hasADDSUBIW ( ) const
inline

Definition at line 61 of file AVRSubtarget.h.

◆ hasBREAK()

bool llvm::AVRSubtarget::hasBREAK ( ) const
inline

Definition at line 73 of file AVRSubtarget.h.

◆ hasDES()

bool llvm::AVRSubtarget::hasDES ( ) const
inline

Definition at line 70 of file AVRSubtarget.h.

◆ hasEIJMPCALL()

bool llvm::AVRSubtarget::hasEIJMPCALL ( ) const
inline

Definition at line 60 of file AVRSubtarget.h.

◆ hasELPM()

bool llvm::AVRSubtarget::hasELPM ( ) const
inline

Definition at line 66 of file AVRSubtarget.h.

◆ hasELPMX()

bool llvm::AVRSubtarget::hasELPMX ( ) const
inline

Definition at line 67 of file AVRSubtarget.h.

◆ hasIJMPCALL()

bool llvm::AVRSubtarget::hasIJMPCALL ( ) const
inline

Definition at line 59 of file AVRSubtarget.h.

◆ hasJMPCALL()

bool llvm::AVRSubtarget::hasJMPCALL ( ) const
inline

Definition at line 58 of file AVRSubtarget.h.

◆ hasLPM()

bool llvm::AVRSubtarget::hasLPM ( ) const
inline

Definition at line 64 of file AVRSubtarget.h.

Referenced by llvm::AVRDAGToDAGISel::select< ISD::LOAD >().

◆ hasLPMX()

bool llvm::AVRSubtarget::hasLPMX ( ) const
inline

Definition at line 65 of file AVRSubtarget.h.

◆ hasMOVW()

bool llvm::AVRSubtarget::hasMOVW ( ) const
inline

Definition at line 63 of file AVRSubtarget.h.

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

◆ hasSmallStack()

bool llvm::AVRSubtarget::hasSmallStack ( ) const
inline

Definition at line 62 of file AVRSubtarget.h.

◆ hasSPM()

bool llvm::AVRSubtarget::hasSPM ( ) const
inline

Definition at line 68 of file AVRSubtarget.h.

◆ hasSPMX()

bool llvm::AVRSubtarget::hasSPMX ( ) const
inline

Definition at line 69 of file AVRSubtarget.h.

◆ hasSRAM()

bool llvm::AVRSubtarget::hasSRAM ( ) const
inline

Definition at line 57 of file AVRSubtarget.h.

◆ hasTinyEncoding()

bool llvm::AVRSubtarget::hasTinyEncoding ( ) const
inline

Definition at line 74 of file AVRSubtarget.h.

◆ initializeSubtargetDependencies()

AVRSubtarget & llvm::AVRSubtarget::initializeSubtargetDependencies ( StringRef  CPU,
StringRef  FS,
const TargetMachine TM 
)

Definition at line 48 of file AVRSubtarget.cpp.

References ParseSubtargetFeatures().

Referenced by getRegisterInfo().

◆ ParseSubtargetFeatures()

void llvm::AVRSubtarget::ParseSubtargetFeatures ( StringRef  CPU,
StringRef  FS 
)

Parses a subtarget feature string, setting appropriate options.

Note
Definition of function is auto generated by tblgen.

Referenced by AVRSubtarget(), getRegisterInfo(), and initializeSubtargetDependencies().

◆ supportsMultiplication()

bool llvm::AVRSubtarget::supportsMultiplication ( ) const
inline

Definition at line 72 of file AVRSubtarget.h.

Referenced by llvm::AVRTargetLowering::AVRTargetLowering().

◆ supportsRMW()

bool llvm::AVRSubtarget::supportsRMW ( ) const
inline

Definition at line 71 of file AVRSubtarget.h.


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