diff options
Diffstat (limited to 'include/llvm/Support/ARMTargetParser.h')
-rw-r--r-- | include/llvm/Support/ARMTargetParser.h | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/include/llvm/Support/ARMTargetParser.h b/include/llvm/Support/ARMTargetParser.h index 71acc0dc72d0..4b9070dea596 100644 --- a/include/llvm/Support/ARMTargetParser.h +++ b/include/llvm/Support/ARMTargetParser.h @@ -1,9 +1,8 @@ //===-- ARMTargetParser - Parser for ARM target features --------*- C++ -*-===// // -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // @@ -46,6 +45,13 @@ enum ArchExtKind : unsigned { AEK_AES = 1 << 16, AEK_FP16FML = 1 << 17, AEK_SB = 1 << 18, + AEK_SVE2 = 1 << 19, + AEK_SVE2AES = 1 << 20, + AEK_SVE2SM4 = 1 << 21, + AEK_SVE2SHA3 = 1 << 22, + AEK_BITPERM = 1 << 23, + AEK_FP_DP = 1 << 24, + AEK_LOB = 1 << 25, // Unsupported extensions. AEK_OS = 0x8000000, AEK_IWMMXT = 0x10000000, @@ -127,7 +133,8 @@ enum class FPUVersion { VFPV3, VFPV3_FP16, VFPV4, - VFPV5 + VFPV5, + VFPV5_FULLFP16, }; // An FPU name restricts the FPU in one of three ways: @@ -234,6 +241,8 @@ StringRef getCPUAttr(ArchKind AK); StringRef getSubArch(ArchKind AK); StringRef getArchExtName(unsigned ArchExtKind); StringRef getArchExtFeature(StringRef ArchExt); +bool appendArchExtFeatures(StringRef CPU, ARM::ArchKind AK, StringRef ArchExt, + std::vector<StringRef> &Features); StringRef getHWDivName(unsigned HWDivKind); // Information by Name |