diff options
Diffstat (limited to 'llvm/lib/Target/ARM64/ARM64Subtarget.h')
-rw-r--r-- | llvm/lib/Target/ARM64/ARM64Subtarget.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM64/ARM64Subtarget.h b/llvm/lib/Target/ARM64/ARM64Subtarget.h index 1cbd79e9693..584c41be07c 100644 --- a/llvm/lib/Target/ARM64/ARM64Subtarget.h +++ b/llvm/lib/Target/ARM64/ARM64Subtarget.h @@ -27,6 +27,15 @@ class StringRef; class ARM64Subtarget : public ARM64GenSubtargetInfo { protected: + enum ARMProcFamilyEnum {Others, CortexA53, CortexA57, Cyclone}; + + /// ARMProcFamily - ARM processor family: Cortex-A53, Cortex-A57, and others. + ARMProcFamilyEnum ARMProcFamily; + + bool HasFPARMv8; + bool HasNEON; + bool HasCrypto; + // HasZeroCycleRegMove - Has zero-cycle register mov instructions. bool HasZeroCycleRegMove; @@ -51,6 +60,10 @@ public: bool hasZeroCycleZeroing() const { return HasZeroCycleZeroing; } + bool hasFPARMv8() const { return HasFPARMv8; } + bool hasNEON() const { return HasNEON; } + bool hasCrypto() const { return HasCrypto; } + bool isTargetDarwin() const { return TargetTriple.isOSDarwin(); } bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); } |