Skip to content

Commit f0e39c4

Browse files
[AArch64] Add aliases for processors apple-a18/s6..10. (llvm#127152)
apple-a18 is an alias of apple-m4. apple-s6/s7/s8 are aliases of apple-a13. apple-s9/s10 are aliases of apple-a16. As with some other aliases today, this reflects identical ISA feature support, but not necessarily identical microarchitectures and performance characteristics.
1 parent 1594405 commit f0e39c4

File tree

4 files changed

+30
-2
lines changed

4 files changed

+30
-2
lines changed

clang/test/Driver/print-supported-cpus-aarch64.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,20 @@
1414
// CHECK: apple-a15
1515
// CHECK: apple-a16
1616
// CHECK: apple-a17
17+
// CHECK: apple-a18
1718
// CHECK: apple-a7
1819
// CHECK: apple-a8
1920
// CHECK: apple-a9
2021
// CHECK: apple-m1
2122
// CHECK: apple-m2
2223
// CHECK: apple-m3
2324
// CHECK: apple-m4
25+
// CHECK: apple-s10
2426
// CHECK: apple-s4
2527
// CHECK: apple-s5
28+
// CHECK: apple-s6
29+
// CHECK: apple-s7
30+
// CHECK: apple-s8
31+
// CHECK: apple-s9
2632

2733
// CHECK: Use -mcpu or -mtune to specify the target's processor.

clang/test/Misc/target-invalid-cpu-note/aarch64.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,21 @@
1919
// CHECK-SAME: {{^}}, apple-a15
2020
// CHECK-SAME: {{^}}, apple-a16
2121
// CHECK-SAME: {{^}}, apple-a17
22+
// CHECK-SAME: {{^}}, apple-a18
2223
// CHECK-SAME: {{^}}, apple-a7
2324
// CHECK-SAME: {{^}}, apple-a8
2425
// CHECK-SAME: {{^}}, apple-a9
2526
// CHECK-SAME: {{^}}, apple-m1
2627
// CHECK-SAME: {{^}}, apple-m2
2728
// CHECK-SAME: {{^}}, apple-m3
2829
// CHECK-SAME: {{^}}, apple-m4
30+
// CHECK-SAME: {{^}}, apple-s10
2931
// CHECK-SAME: {{^}}, apple-s4
3032
// CHECK-SAME: {{^}}, apple-s5
33+
// CHECK-SAME: {{^}}, apple-s6
34+
// CHECK-SAME: {{^}}, apple-s7
35+
// CHECK-SAME: {{^}}, apple-s8
36+
// CHECK-SAME: {{^}}, apple-s9
3137
// CHECK-SAME: {{^}}, carmel
3238
// CHECK-SAME: {{^}}, cobalt-100
3339
// CHECK-SAME: {{^}}, cortex-a34

llvm/lib/Target/AArch64/AArch64Processors.td

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1224,6 +1224,9 @@ def : ProcessorAlias<"apple-s5", "apple-a12">;
12241224

12251225
def : ProcessorModel<"apple-a13", CycloneModel, ProcessorFeatures.AppleA13,
12261226
[TuneAppleA13]>;
1227+
def : ProcessorAlias<"apple-s6", "apple-a13">;
1228+
def : ProcessorAlias<"apple-s7", "apple-a13">;
1229+
def : ProcessorAlias<"apple-s8", "apple-a13">;
12271230

12281231
def : ProcessorModel<"apple-a14", CycloneModel, ProcessorFeatures.AppleA14,
12291232
[TuneAppleA14]>;
@@ -1236,12 +1239,15 @@ def : ProcessorAlias<"apple-m2", "apple-a15">;
12361239
def : ProcessorModel<"apple-a16", CycloneModel, ProcessorFeatures.AppleA16,
12371240
[TuneAppleA16]>;
12381241
def : ProcessorAlias<"apple-m3", "apple-a16">;
1242+
def : ProcessorAlias<"apple-s9", "apple-a16">;
1243+
def : ProcessorAlias<"apple-s10", "apple-a16">;
12391244

12401245
def : ProcessorModel<"apple-a17", CycloneModel, ProcessorFeatures.AppleA17,
12411246
[TuneAppleA17]>;
12421247

12431248
def : ProcessorModel<"apple-m4", CycloneModel, ProcessorFeatures.AppleM4,
12441249
[TuneAppleM4]>;
1250+
def : ProcessorAlias<"apple-a18", "apple-m4">;
12451251

12461252
// Alias for the latest Apple processor model supported by LLVM.
12471253
def : ProcessorAlias<"apple-latest", "apple-m4">;

llvm/unittests/TargetParser/TargetParserTest.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1130,14 +1130,20 @@ INSTANTIATE_TEST_SUITE_P(
11301130
AArch64CPUTestParams("apple-s4", "armv8.3-a"),
11311131
AArch64CPUTestParams("apple-s5", "armv8.3-a"),
11321132
AArch64CPUTestParams("apple-a13", "armv8.4-a"),
1133+
AArch64CPUTestParams("apple-s6", "armv8.4-a"),
1134+
AArch64CPUTestParams("apple-s7", "armv8.4-a"),
1135+
AArch64CPUTestParams("apple-s8", "armv8.4-a"),
11331136
AArch64CPUTestParams("apple-a14", "armv8.4-a"),
11341137
AArch64CPUTestParams("apple-m1", "armv8.4-a"),
11351138
AArch64CPUTestParams("apple-a15", "armv8.6-a"),
11361139
AArch64CPUTestParams("apple-m2", "armv8.6-a"),
11371140
AArch64CPUTestParams("apple-a16", "armv8.6-a"),
11381141
AArch64CPUTestParams("apple-m3", "armv8.6-a"),
1142+
AArch64CPUTestParams("apple-s9", "armv8.6-a"),
1143+
AArch64CPUTestParams("apple-s10", "armv8.6-a"),
11391144
AArch64CPUTestParams("apple-a17", "armv8.6-a"),
11401145
AArch64CPUTestParams("apple-m4", "armv8.7-a"),
1146+
AArch64CPUTestParams("apple-a18", "armv8.7-a"),
11411147
AArch64CPUTestParams("exynos-m3", "armv8-a"),
11421148
AArch64CPUTestParams("exynos-m4", "armv8.2-a"),
11431149
AArch64CPUTestParams("exynos-m5", "armv8.2-a"),
@@ -1246,13 +1252,17 @@ INSTANTIATE_TEST_SUITE_P(
12461252
"apple-a8", "apple-a9"}),
12471253
AArch64CPUAliasTestParams({"apple-a12", "apple-s4",
12481254
"apple-s5"}),
1255+
AArch64CPUAliasTestParams({"apple-a13", "apple-s6",
1256+
"apple-s7", "apple-s8"}),
12491257
AArch64CPUAliasTestParams({"apple-a14", "apple-m1"}),
12501258
AArch64CPUAliasTestParams({"apple-a15", "apple-m2"}),
1251-
AArch64CPUAliasTestParams({"apple-a16", "apple-m3"})),
1259+
AArch64CPUAliasTestParams({"apple-a16", "apple-m3",
1260+
"apple-s9", "apple-s10"}),
1261+
AArch64CPUAliasTestParams({"apple-m4", "apple-a18"})),
12521262
AArch64CPUAliasTestParams::PrintToStringParamName);
12531263

12541264
// Note: number of CPUs includes aliases.
1255-
static constexpr unsigned NumAArch64CPUArchs = 82;
1265+
static constexpr unsigned NumAArch64CPUArchs = 88;
12561266

12571267
TEST(TargetParserTest, testAArch64CPUArchList) {
12581268
SmallVector<StringRef, NumAArch64CPUArchs> List;

0 commit comments

Comments
 (0)