LLVM 19.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::CSKYSubtarget Class Reference

#include "Target/CSKY/CSKYSubtarget.h"

Inheritance diagram for llvm::CSKYSubtarget:
Inheritance graph
[legend]

Public Member Functions

 CSKYSubtarget (const Triple &TT, StringRef CPU, StringRef TuneCPU, StringRef FS, const TargetMachine &TM)
 
const CSKYFrameLoweringgetFrameLowering () const override
 
const CSKYInstrInfogetInstrInfo () const override
 
const CSKYRegisterInfogetRegisterInfo () const override
 
const CSKYTargetLoweringgetTargetLowering () const override
 
const SelectionDAGTargetInfogetSelectionDAGInfo () const override
 
CSKYSubtargetinitializeSubtargetDependencies (const Triple &TT, StringRef CPU, StringRef TuneCPU, StringRef FS)
 Initializes using the passed in CPU and feature strings so that we can use initializer lists for subtarget initialization.
 
void ParseSubtargetFeatures (StringRef CPU, StringRef TuneCPU, StringRef FS)
 
bool useHardFloatABI () const
 
bool useHardFloat () const
 
bool hasFPUv2SingleFloat () const
 
bool hasFPUv2DoubleFloat () const
 
bool hasFPUv2 () const
 
bool hasFPUv3HalfWord () const
 
bool hasFPUv3HalfFloat () const
 
bool hasFPUv3SingleFloat () const
 
bool hasFPUv3DoubleFloat () const
 
bool hasFPUv3 () const
 
bool hasAnyFloatExt () const
 
bool hasFdivdu () const
 
bool hasFLOATE1 () const
 
bool hasFLOAT1E2 () const
 
bool hasFLOAT1E3 () const
 
bool hasFLOAT3E4 () const
 
bool hasFLOAT7E60 () const
 
bool hasExtendLrw () const
 
bool hasBTST16 () const
 
bool hasTrust () const
 
bool hasJAVA () const
 
bool hasCache () const
 
bool hasNVIC () const
 
bool hasDSP () const
 
bool hasDSP1E2 () const
 
bool hasDSPE60 () const
 
bool hasDSPV2 () const
 
bool hasDSP_Silan () const
 
bool hasDoloop () const
 
bool hasHighRegisters () const
 
bool hasVDSPV2 () const
 
bool hasVDSPV2_FLOAT () const
 
bool hasVDSPV2_HALF () const
 
bool hasVDSP2E3 () const
 
bool hasVDSP2E60F () const
 
bool readTPHard () const
 
bool hasVDSPV1_128 () const
 
bool useCCRT () const
 
bool dumpConstPool () const
 
bool enableInterruptAttribute () const
 
bool hasPushPop () const
 
bool hasSTM () const
 
bool smartMode () const
 
bool enableStackSize () const
 
bool hasE1 () const
 
bool hasE2 () const
 
bool has2E3 () const
 
bool has3r1E3r2 () const
 
bool has3r2E3r3 () const
 
bool has3E3r1 () const
 
bool has3E7 () const
 
bool hasMP () const
 
bool hasMP1E2 () const
 
bool has7E10 () const
 
bool has10E60 () const
 
bool isCK801 () const
 
bool isCK802 () const
 
bool isCK803 () const
 
bool isCK803S () const
 
bool isCK804 () const
 
bool isCK805 () const
 
bool isCK807 () const
 
bool isCK810 () const
 
bool isCK810V () const
 
bool isCK860 () const
 
bool isCK860V () const
 

Public Attributes

const unsigned XLen = 32
 

Detailed Description

Definition at line 30 of file CSKYSubtarget.h.

Constructor & Destructor Documentation

◆ CSKYSubtarget()

CSKYSubtarget::CSKYSubtarget ( const Triple TT,
StringRef  CPU,
StringRef  TuneCPU,
StringRef  FS,
const TargetMachine TM 
)

Definition at line 90 of file CSKYSubtarget.cpp.

Member Function Documentation

◆ dumpConstPool()

bool llvm::CSKYSubtarget::dumpConstPool ( ) const
inline

Definition at line 179 of file CSKYSubtarget.h.

◆ enableInterruptAttribute()

bool llvm::CSKYSubtarget::enableInterruptAttribute ( ) const
inline

Definition at line 180 of file CSKYSubtarget.h.

◆ enableStackSize()

bool llvm::CSKYSubtarget::enableStackSize ( ) const
inline

Definition at line 184 of file CSKYSubtarget.h.

◆ getFrameLowering()

const CSKYFrameLowering * llvm::CSKYSubtarget::getFrameLowering ( ) const
inlineoverride

Definition at line 115 of file CSKYSubtarget.h.

◆ getInstrInfo()

const CSKYInstrInfo * llvm::CSKYSubtarget::getInstrInfo ( ) const
inlineoverride

◆ getRegisterInfo()

const CSKYRegisterInfo * llvm::CSKYSubtarget::getRegisterInfo ( ) const
inlineoverride

◆ getSelectionDAGInfo()

const SelectionDAGTargetInfo * llvm::CSKYSubtarget::getSelectionDAGInfo ( ) const
inlineoverride

Definition at line 123 of file CSKYSubtarget.h.

◆ getTargetLowering()

const CSKYTargetLowering * llvm::CSKYSubtarget::getTargetLowering ( ) const
inlineoverride

Definition at line 120 of file CSKYSubtarget.h.

Referenced by useHardFloatABI().

◆ has10E60()

bool llvm::CSKYSubtarget::has10E60 ( ) const
inline

Definition at line 196 of file CSKYSubtarget.h.

◆ has2E3()

bool llvm::CSKYSubtarget::has2E3 ( ) const
inline

◆ has3E3r1()

bool llvm::CSKYSubtarget::has3E3r1 ( ) const
inline

Definition at line 191 of file CSKYSubtarget.h.

◆ has3E7()

bool llvm::CSKYSubtarget::has3E7 ( ) const
inline

Definition at line 192 of file CSKYSubtarget.h.

◆ has3r1E3r2()

bool llvm::CSKYSubtarget::has3r1E3r2 ( ) const
inline

Definition at line 189 of file CSKYSubtarget.h.

◆ has3r2E3r3()

bool llvm::CSKYSubtarget::has3r2E3r3 ( ) const
inline

Definition at line 190 of file CSKYSubtarget.h.

◆ has7E10()

bool llvm::CSKYSubtarget::has7E10 ( ) const
inline

Definition at line 195 of file CSKYSubtarget.h.

◆ hasAnyFloatExt()

bool llvm::CSKYSubtarget::hasAnyFloatExt ( ) const
inline

Definition at line 149 of file CSKYSubtarget.h.

References hasFPUv2(), and hasFPUv3().

◆ hasBTST16()

bool llvm::CSKYSubtarget::hasBTST16 ( ) const
inline

Definition at line 157 of file CSKYSubtarget.h.

◆ hasCache()

bool llvm::CSKYSubtarget::hasCache ( ) const
inline

Definition at line 160 of file CSKYSubtarget.h.

◆ hasDoloop()

bool llvm::CSKYSubtarget::hasDoloop ( ) const
inline

Definition at line 167 of file CSKYSubtarget.h.

◆ hasDSP()

bool llvm::CSKYSubtarget::hasDSP ( ) const
inline

Definition at line 162 of file CSKYSubtarget.h.

◆ hasDSP1E2()

bool llvm::CSKYSubtarget::hasDSP1E2 ( ) const
inline

Definition at line 163 of file CSKYSubtarget.h.

◆ hasDSP_Silan()

bool llvm::CSKYSubtarget::hasDSP_Silan ( ) const
inline

Definition at line 166 of file CSKYSubtarget.h.

◆ hasDSPE60()

bool llvm::CSKYSubtarget::hasDSPE60 ( ) const
inline

Definition at line 164 of file CSKYSubtarget.h.

◆ hasDSPV2()

bool llvm::CSKYSubtarget::hasDSPV2 ( ) const
inline

Definition at line 165 of file CSKYSubtarget.h.

◆ hasE1()

bool llvm::CSKYSubtarget::hasE1 ( ) const
inline

Definition at line 186 of file CSKYSubtarget.h.

◆ hasE2()

bool llvm::CSKYSubtarget::hasE2 ( ) const
inline

◆ hasExtendLrw()

bool llvm::CSKYSubtarget::hasExtendLrw ( ) const
inline

Definition at line 156 of file CSKYSubtarget.h.

◆ hasFdivdu()

bool llvm::CSKYSubtarget::hasFdivdu ( ) const
inline

Definition at line 150 of file CSKYSubtarget.h.

◆ hasFLOAT1E2()

bool llvm::CSKYSubtarget::hasFLOAT1E2 ( ) const
inline

Definition at line 152 of file CSKYSubtarget.h.

◆ hasFLOAT1E3()

bool llvm::CSKYSubtarget::hasFLOAT1E3 ( ) const
inline

Definition at line 153 of file CSKYSubtarget.h.

◆ hasFLOAT3E4()

bool llvm::CSKYSubtarget::hasFLOAT3E4 ( ) const
inline

Definition at line 154 of file CSKYSubtarget.h.

◆ hasFLOAT7E60()

bool llvm::CSKYSubtarget::hasFLOAT7E60 ( ) const
inline

Definition at line 155 of file CSKYSubtarget.h.

◆ hasFLOATE1()

bool llvm::CSKYSubtarget::hasFLOATE1 ( ) const
inline

Definition at line 151 of file CSKYSubtarget.h.

◆ hasFPUv2()

bool llvm::CSKYSubtarget::hasFPUv2 ( ) const
inline

Definition at line 141 of file CSKYSubtarget.h.

Referenced by hasAnyFloatExt().

◆ hasFPUv2DoubleFloat()

bool llvm::CSKYSubtarget::hasFPUv2DoubleFloat ( ) const
inline

◆ hasFPUv2SingleFloat()

bool llvm::CSKYSubtarget::hasFPUv2SingleFloat ( ) const
inline

◆ hasFPUv3()

bool llvm::CSKYSubtarget::hasFPUv3 ( ) const
inline

Definition at line 146 of file CSKYSubtarget.h.

Referenced by hasAnyFloatExt().

◆ hasFPUv3DoubleFloat()

bool llvm::CSKYSubtarget::hasFPUv3DoubleFloat ( ) const
inline

◆ hasFPUv3HalfFloat()

bool llvm::CSKYSubtarget::hasFPUv3HalfFloat ( ) const
inline

Definition at line 143 of file CSKYSubtarget.h.

◆ hasFPUv3HalfWord()

bool llvm::CSKYSubtarget::hasFPUv3HalfWord ( ) const
inline

Definition at line 142 of file CSKYSubtarget.h.

◆ hasFPUv3SingleFloat()

bool llvm::CSKYSubtarget::hasFPUv3SingleFloat ( ) const
inline

◆ hasHighRegisters()

bool llvm::CSKYSubtarget::hasHighRegisters ( ) const
inline

◆ hasJAVA()

bool llvm::CSKYSubtarget::hasJAVA ( ) const
inline

Definition at line 159 of file CSKYSubtarget.h.

◆ hasMP()

bool llvm::CSKYSubtarget::hasMP ( ) const
inline

Definition at line 193 of file CSKYSubtarget.h.

◆ hasMP1E2()

bool llvm::CSKYSubtarget::hasMP1E2 ( ) const
inline

Definition at line 194 of file CSKYSubtarget.h.

◆ hasNVIC()

bool llvm::CSKYSubtarget::hasNVIC ( ) const
inline

Definition at line 161 of file CSKYSubtarget.h.

◆ hasPushPop()

bool llvm::CSKYSubtarget::hasPushPop ( ) const
inline

Definition at line 181 of file CSKYSubtarget.h.

◆ hasSTM()

bool llvm::CSKYSubtarget::hasSTM ( ) const
inline

Definition at line 182 of file CSKYSubtarget.h.

◆ hasTrust()

bool llvm::CSKYSubtarget::hasTrust ( ) const
inline

Definition at line 158 of file CSKYSubtarget.h.

◆ hasVDSP2E3()

bool llvm::CSKYSubtarget::hasVDSP2E3 ( ) const
inline

Definition at line 174 of file CSKYSubtarget.h.

◆ hasVDSP2E60F()

bool llvm::CSKYSubtarget::hasVDSP2E60F ( ) const
inline

Definition at line 175 of file CSKYSubtarget.h.

◆ hasVDSPV1_128()

bool llvm::CSKYSubtarget::hasVDSPV1_128 ( ) const
inline

Definition at line 177 of file CSKYSubtarget.h.

◆ hasVDSPV2()

bool llvm::CSKYSubtarget::hasVDSPV2 ( ) const
inline

Definition at line 169 of file CSKYSubtarget.h.

◆ hasVDSPV2_FLOAT()

bool llvm::CSKYSubtarget::hasVDSPV2_FLOAT ( ) const
inline

Definition at line 170 of file CSKYSubtarget.h.

◆ hasVDSPV2_HALF()

bool llvm::CSKYSubtarget::hasVDSPV2_HALF ( ) const
inline

Definition at line 171 of file CSKYSubtarget.h.

◆ initializeSubtargetDependencies()

CSKYSubtarget & CSKYSubtarget::initializeSubtargetDependencies ( const Triple TT,
StringRef  CPU,
StringRef  TuneCPU,
StringRef  FS 
)

Initializes using the passed in CPU and feature strings so that we can use initializer lists for subtarget initialization.

Definition at line 25 of file CSKYSubtarget.cpp.

References llvm::StringRef::empty(), and ParseSubtargetFeatures().

◆ isCK801()

bool llvm::CSKYSubtarget::isCK801 ( ) const
inline

Definition at line 198 of file CSKYSubtarget.h.

◆ isCK802()

bool llvm::CSKYSubtarget::isCK802 ( ) const
inline

Definition at line 199 of file CSKYSubtarget.h.

◆ isCK803()

bool llvm::CSKYSubtarget::isCK803 ( ) const
inline

Definition at line 200 of file CSKYSubtarget.h.

◆ isCK803S()

bool llvm::CSKYSubtarget::isCK803S ( ) const
inline

Definition at line 201 of file CSKYSubtarget.h.

◆ isCK804()

bool llvm::CSKYSubtarget::isCK804 ( ) const
inline

Definition at line 202 of file CSKYSubtarget.h.

◆ isCK805()

bool llvm::CSKYSubtarget::isCK805 ( ) const
inline

Definition at line 203 of file CSKYSubtarget.h.

◆ isCK807()

bool llvm::CSKYSubtarget::isCK807 ( ) const
inline

Definition at line 204 of file CSKYSubtarget.h.

◆ isCK810()

bool llvm::CSKYSubtarget::isCK810 ( ) const
inline

Definition at line 205 of file CSKYSubtarget.h.

◆ isCK810V()

bool llvm::CSKYSubtarget::isCK810V ( ) const
inline

Definition at line 206 of file CSKYSubtarget.h.

◆ isCK860()

bool llvm::CSKYSubtarget::isCK860 ( ) const
inline

Definition at line 207 of file CSKYSubtarget.h.

◆ isCK860V()

bool llvm::CSKYSubtarget::isCK860V ( ) const
inline

Definition at line 208 of file CSKYSubtarget.h.

◆ ParseSubtargetFeatures()

void llvm::CSKYSubtarget::ParseSubtargetFeatures ( StringRef  CPU,
StringRef  TuneCPU,
StringRef  FS 
)

◆ readTPHard()

bool llvm::CSKYSubtarget::readTPHard ( ) const
inline

Definition at line 176 of file CSKYSubtarget.h.

◆ smartMode()

bool llvm::CSKYSubtarget::smartMode ( ) const
inline

Definition at line 183 of file CSKYSubtarget.h.

◆ useCCRT()

bool llvm::CSKYSubtarget::useCCRT ( ) const
inline

Definition at line 178 of file CSKYSubtarget.h.

◆ useHardFloat()

bool llvm::CSKYSubtarget::useHardFloat ( ) const
inline

Definition at line 138 of file CSKYSubtarget.h.

Referenced by llvm::CSKYTargetLowering::CSKYTargetLowering().

◆ useHardFloatABI()

bool CSKYSubtarget::useHardFloatABI ( ) const

Member Data Documentation

◆ XLen

const unsigned llvm::CSKYSubtarget::XLen = 32

Definition at line 210 of file CSKYSubtarget.h.


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