Skip to content

Commit 9e3a02b

Browse files
committed
[WIP] Fix the default features by architecture extensions
1 parent c4ff0a6 commit 9e3a02b

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

clang/lib/Basic/Targets/AArch64.cpp

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ void AArch64TargetInfo::setArchFeatures() {
6666
HasLSE = true;
6767
HasRDM = true;
6868
} else if (ArchInfo->Version.getMajor() == 8) {
69+
if (ArchInfo->Version.getMinor() >= 8u) {
70+
HasMOPS = true;
71+
}
6972
if (ArchInfo->Version.getMinor() >= 7u) {
7073
HasWFxT = true;
7174
}
@@ -87,6 +90,9 @@ void AArch64TargetInfo::setArchFeatures() {
8790
HasFlagM = true;
8891
}
8992
if (ArchInfo->Version.getMinor() >= 3u) {
93+
HasFCMA = true;
94+
HasJSCVT = true;
95+
HasPAuth = true;
9096
HasRCPC = true;
9197
FPU |= NeonMode;
9298
}
@@ -99,16 +105,19 @@ void AArch64TargetInfo::setArchFeatures() {
99105
HasRDM = true;
100106
}
101107
} else if (ArchInfo->Version.getMajor() == 9) {
108+
if (ArchInfo->Version.getMinor() >= 3u) {
109+
HasMOPS = true;
110+
}
102111
if (ArchInfo->Version.getMinor() >= 2u) {
103112
HasWFxT = true;
104113
}
105114
if (ArchInfo->Version.getMinor() >= 1u) {
106115
HasBFloat16 = true;
107116
HasMatMul = true;
108117
}
109-
FPU |= SveMode;
110-
HasSVE2 = true;
111-
HasFullFP16 = true;
118+
// FPU |= SveMode;
119+
// HasSVE2 = true;
120+
// HasFullFP16 = true;
112121
HasAlternativeNZCV = true;
113122
HasFRInt3264 = true;
114123
HasSSBS = true;
@@ -118,6 +127,9 @@ void AArch64TargetInfo::setArchFeatures() {
118127
HasDotProd = true;
119128
HasDIT = true;
120129
HasFlagM = true;
130+
HasFCMA = true;
131+
HasJSCVT = true;
132+
HasPAuth = true;
121133
HasRCPC = true;
122134
FPU |= NeonMode;
123135
HasCCPP = true;

0 commit comments

Comments
 (0)