14 #ifndef LLVM_LIB_TARGET_AARCH64_AARCH64SUBTARGET_H
15 #define LLVM_LIB_TARGET_AARCH64_AARCH64SUBTARGET_H
26 #define GET_SUBTARGETINFO_HEADER
27 #include "AArch64GenSubtargetInfo.inc"
148 unsigned NumRegionInstrs)
const override;
const_iterator end(StringRef path)
Get end iterator over path.
const AArch64RegisterInfo & getRegisterInfo() const
getRegisterInfo - TargetInstrInfo is a superset of MRegister info.
bool isOSBinFormatMachO() const
Tests whether the environment is MachO.
bool isTargetLinux() const
bool hasZeroCycleRegMove() const
bool hasZeroCycleZeroing() const
AArch64SelectionDAGInfo TSInfo
const_iterator begin(StringRef path)
Get begin iterator over path.
const AArch64FrameLowering * getFrameLowering() const override
bool isOSWindows() const
Tests whether the OS is Windows.
bool isOSLinux() const
Tests whether the OS is Linux.
const AArch64RegisterInfo * getRegisterInfo() const override
unsigned getMaxInlineSizeThreshold() const
getMaxInlineSizeThreshold - Returns the maximum memset / memcpy size that still makes it profitable t...
bool useAA() const override
bool isTargetCOFF() const
bool enableMachineScheduler() const override
const Triple & getTargetTriple() const
bool enableEarlyIfConversion() const override
bool isiOS() const
Is this an iOS triple.
const AArch64TargetLowering * getTargetLowering() const override
bool isTargetMachO() const
bool isLittleEndian() const
bool isOSBinFormatCOFF() const
Tests whether the OS uses the COFF binary format.
unsigned char ClassifyGlobalReference(const GlobalValue *GV, const TargetMachine &TM) const
ClassifyGlobalReference - Find the target operand flags that describe how a global value should be re...
Triple - Helper class for working with autoconf configuration names.
bool isOSDarwin() const
isOSDarwin - Is this a "Darwin" OS (OS X or iOS).
const AArch64SelectionDAGInfo * getSelectionDAGInfo() const override
AArch64InstrInfo InstrInfo
void ParseSubtargetFeatures(StringRef CPU, StringRef FS)
ParseSubtargetFeatures - Parses features string setting specified subtarget options.
std::string CPUString
CPUString - String name of used CPU.
const char * getBZeroEntry() const
This function returns the name of a function which has an interface like the non-standard bzero funct...
bool enablePostRAScheduler() const override
bool isTargetDarwin() const
void overrideSchedPolicy(MachineSchedPolicy &Policy, MachineInstr *begin, MachineInstr *end, unsigned NumRegionInstrs) const override
Define a generic scheduling policy for targets that don't provide their own MachineSchedStrategy.
Representation of each machine instruction.
std::unique_ptr< PBQPRAConstraint > getCustomPBQPConstraints() const override
AArch64Subtarget(const Triple &TT, const std::string &CPU, const std::string &FS, const TargetMachine &TM, bool LittleEndian)
This constructor initializes the data members to match that of the specified triple.
bool isOSBinFormatELF() const
Tests whether the OS uses the ELF binary format.
bool isTargetWindows() const
AArch64FrameLowering FrameLowering
Triple TargetTriple
TargetTriple - What processor and OS we're targeting.
ARMProcFamilyEnum ARMProcFamily
ARMProcFamily - ARM processor family: Cortex-A53, Cortex-A57, and others.
const AArch64InstrInfo * getInstrInfo() const override
Primary interface to the complete machine description for the target machine.
StringRef - Represent a constant reference to a string, i.e.
AArch64TargetLowering TLInfo