LLVM
20.0.0git
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
y
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
o
p
r
s
t
u
v
w
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
l
m
o
p
q
r
s
t
u
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Examples
include
llvm
TargetParser
AArch64CPUFeatures.inc
Go to the documentation of this file.
1
//===- AArch64CPUFeatures.inc - AArch64 CPU Features enum -------*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file defines the CPUFeatures enum for AArch64 to facilitate better
10
// testing of this code between LLVM and compiler-rt, primarily that the files
11
// are an exact match.
12
//
13
// This file has two identical copies. The primary copy lives in LLVM and
14
// the other one sits in compiler-rt/lib/builtins/cpu_model directory. To make
15
// changes in this file, first modify the primary copy and copy it over to
16
// compiler-rt. compiler-rt tests will fail if the two files are not synced up.
17
//
18
//===----------------------------------------------------------------------===//
19
20
#ifndef AARCH64_CPU_FEATURS_INC_H
21
#define AARCH64_CPU_FEATURS_INC_H
22
23
// Function Multi Versioning CPU features.
24
enum
CPUFeatures {
25
FEAT_RNG,
26
FEAT_FLAGM,
27
FEAT_FLAGM2,
28
FEAT_FP16FML,
29
FEAT_DOTPROD,
30
FEAT_SM4,
31
FEAT_RDM,
32
FEAT_LSE,
33
FEAT_FP,
34
FEAT_SIMD,
35
FEAT_CRC,
36
RESERVED_FEAT_SHA1,
// previously used and now ABI legacy
37
FEAT_SHA2,
38
FEAT_SHA3,
39
RESERVED_FEAT_AES,
// previously used and now ABI legacy
40
FEAT_PMULL,
41
FEAT_FP16,
42
FEAT_DIT,
43
FEAT_DPB,
44
FEAT_DPB2,
45
FEAT_JSCVT,
46
FEAT_FCMA,
47
FEAT_RCPC,
48
FEAT_RCPC2,
49
FEAT_FRINTTS,
50
RESERVED_FEAT_DGH,
// previously used and now ABI legacy
51
FEAT_I8MM,
52
FEAT_BF16,
53
RESERVED_FEAT_EBF16,
// previously used and now ABI legacy
54
RESERVED_FEAT_RPRES,
// previously used and now ABI legacy
55
FEAT_SVE,
56
RESERVED_FEAT_SVE_BF16,
// previously used and now ABI legacy
57
RESERVED_FEAT_SVE_EBF16,
// previously used and now ABI legacy
58
RESERVED_FEAT_SVE_I8MM,
// previously used and now ABI legacy
59
FEAT_SVE_F32MM,
60
FEAT_SVE_F64MM,
61
FEAT_SVE2,
62
RESERVED_FEAT_SVE_AES,
// previously used and now ABI legacy
63
FEAT_SVE_PMULL128,
64
FEAT_SVE_BITPERM,
65
FEAT_SVE_SHA3,
66
FEAT_SVE_SM4,
67
FEAT_SME,
68
RESERVED_FEAT_MEMTAG,
// previously used and now ABI legacy
69
FEAT_MEMTAG2,
70
RESERVED_FEAT_MEMTAG3,
// previously used and now ABI legacy
71
FEAT_SB,
72
FEAT_PREDRES,
73
RESERVED_FEAT_SSBS,
// previously used and now ABI legacy
74
FEAT_SSBS2,
75
FEAT_BTI,
76
RESERVED_FEAT_LS64,
// previously used and now ABI legacy
77
RESERVED_FEAT_LS64_V,
// previously used and now ABI legacy
78
FEAT_LS64_ACCDATA,
79
FEAT_WFXT,
80
FEAT_SME_F64,
81
FEAT_SME_I64,
82
FEAT_SME2,
83
FEAT_RCPC3,
84
FEAT_MOPS,
85
FEAT_MAX,
86
FEAT_EXT = 62,
// Reserved to indicate presence of additional features field
87
// in __aarch64_cpu_features
88
FEAT_INIT
// Used as flag of features initialization completion
89
};
90
91
#endif
Generated on Mon Jan 20 2025 19:21:04 for LLVM by
1.9.6