13#ifndef LLVM_LIB_TARGET_XTENSA_XTENSASUBTARGET_H
14#define LLVM_LIB_TARGET_XTENSA_XTENSASUBTARGET_H
25#define GET_SUBTARGETINFO_HEADER
26#include "XtensaGenSubtargetInfo.inc"
34#define GET_SUBTARGETINFO_MACRO(ATTRIBUTE, DEFAULT, GETTER) \
35 bool ATTRIBUTE = DEFAULT;
36#include "XtensaGenSubtargetInfo.inc"
38 const Triple &TargetTriple;
39 XtensaInstrInfo InstrInfo;
40 XtensaTargetLowering TLInfo;
41 SelectionDAGTargetInfo TSInfo;
42 XtensaFrameLowering FrameLowering;
44 XtensaSubtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS);
47 XtensaSubtarget(
const Triple &TT, StringRef CPU, StringRef FS,
48 const TargetMachine &TM);
53 return &FrameLowering;
57 return &InstrInfo.getRegisterInfo();
74 bool hasNSA()
const {
return HasNSA; }
Targets can subclass this to parameterize the SelectionDAG lowering and instruction selection process...
StringRef - Represent a constant reference to a string, i.e.
Information about stack frame layout on the target.
Triple - Helper class for working with autoconf configuration names.
bool hasException() const
const Triple & getTargetTriple() const
const SelectionDAGTargetInfo * getSelectionDAGInfo() const override
const XtensaInstrInfo * getInstrInfo() const override
bool hasHighPriInterruptsLevel6() const
bool isWindowedABI() const
bool hasInterrupt() const
bool hasTHREADPTR() const
bool hasHighPriInterruptsLevel7() const
bool hasDataCache() const
bool hasHighPriInterrupts() const
bool hasForcedAtomics() const
bool hasHighPriInterruptsLevel3() const
bool hasHighPriInterruptsLevel5() const
bool hasHighPriInterruptsLevel4() const
const XtensaRegisterInfo * getRegisterInfo() const override
bool hasSingleFloat() const
void ParseSubtargetFeatures(StringRef CPU, StringRef TuneCPU, StringRef FS)
bool hasExtendedL32R() const
bool hasMul32High() const
bool hasRelocatableVector() const
const XtensaTargetLowering * getTargetLowering() const override
bool hasRegionProtection() const
const TargetFrameLowering * getFrameLowering() const override
This is an optimization pass for GlobalISel generic memory operations.