@@ -930,6 +930,12 @@ def ProcessorFeatures {
930
930
list<SubtargetFeature> Generic = [FeatureFPARMv8, FeatureNEON, FeatureETE];
931
931
}
932
932
933
+ // Define an alternative name for a given Processor.
934
+ class ProcessorAlias<string n, string alias> {
935
+ string Name = n;
936
+ string Alias = alias;
937
+ }
938
+
933
939
// FeatureFuseAdrpAdd is enabled under Generic to allow linker merging
934
940
// optimizations.
935
941
def : ProcessorModel<"generic", CortexA510Model, ProcessorFeatures.Generic,
@@ -1050,15 +1056,12 @@ def : ProcessorModel<"tsv110", TSV110Model, ProcessorFeatures.TSV110,
1050
1056
1051
1057
// Apple CPUs
1052
1058
1053
- // Support cyclone as an alias for apple-a7 so we can still LTO old bitcode.
1054
- def : ProcessorModel<"cyclone", CycloneModel, ProcessorFeatures.AppleA7,
1055
- [TuneAppleA7]>;
1056
1059
def : ProcessorModel<"apple-a7", CycloneModel, ProcessorFeatures.AppleA7,
1057
1060
[TuneAppleA7]>;
1058
- def : ProcessorModel<" apple-a8", CycloneModel, ProcessorFeatures.AppleA7,
1059
- [TuneAppleA7] >;
1060
- def : ProcessorModel <"apple-a9 ", CycloneModel, ProcessorFeatures.AppleA7,
1061
- [TuneAppleA7] >;
1061
+ // Support cyclone as an alias for apple-a7 so we can still LTO old bitcode.
1062
+ def : ProcessorAlias<"cyclone", "apple-a7" >;
1063
+ def : ProcessorAlias <"apple-a8 ", "apple-a7">;
1064
+ def : ProcessorAlias<"apple-a9", "apple-a7" >;
1062
1065
1063
1066
def : ProcessorModel<"apple-a10", CycloneModel, ProcessorFeatures.AppleA10,
1064
1067
[TuneAppleA10]>;
@@ -1068,28 +1071,23 @@ def : ProcessorModel<"apple-a11", CycloneModel, ProcessorFeatures.AppleA11,
1068
1071
1069
1072
def : ProcessorModel<"apple-a12", CycloneModel, ProcessorFeatures.AppleA12,
1070
1073
[TuneAppleA12]>;
1071
- def : ProcessorModel<"apple-s4", CycloneModel, ProcessorFeatures.AppleA12,
1072
- [TuneAppleA12]>;
1073
- def : ProcessorModel<"apple-s5", CycloneModel, ProcessorFeatures.AppleA12,
1074
- [TuneAppleA12]>;
1074
+ def : ProcessorAlias<"apple-s4", "apple-a12">;
1075
+ def : ProcessorAlias<"apple-s5", "apple-a12">;
1075
1076
1076
1077
def : ProcessorModel<"apple-a13", CycloneModel, ProcessorFeatures.AppleA13,
1077
1078
[TuneAppleA13]>;
1078
1079
1079
1080
def : ProcessorModel<"apple-a14", CycloneModel, ProcessorFeatures.AppleA14,
1080
1081
[TuneAppleA14]>;
1081
- def : ProcessorModel<"apple-m1", CycloneModel, ProcessorFeatures.AppleA14,
1082
- [TuneAppleA14]>;
1082
+ def : ProcessorAlias<"apple-m1", "apple-a14">;
1083
1083
1084
1084
def : ProcessorModel<"apple-a15", CycloneModel, ProcessorFeatures.AppleA15,
1085
1085
[TuneAppleA15]>;
1086
- def : ProcessorModel<"apple-m2", CycloneModel, ProcessorFeatures.AppleA15,
1087
- [TuneAppleA15]>;
1086
+ def : ProcessorAlias<"apple-m2", "apple-a15">;
1088
1087
1089
1088
def : ProcessorModel<"apple-a16", CycloneModel, ProcessorFeatures.AppleA16,
1090
1089
[TuneAppleA16]>;
1091
- def : ProcessorModel<"apple-m3", CycloneModel, ProcessorFeatures.AppleA16,
1092
- [TuneAppleA16]>;
1090
+ def : ProcessorAlias<"apple-m3", "apple-a16">;
1093
1091
1094
1092
def : ProcessorModel<"apple-a17", CycloneModel, ProcessorFeatures.AppleA17,
1095
1093
[TuneAppleA17]>;
@@ -1098,8 +1096,7 @@ def : ProcessorModel<"apple-m4", CycloneModel, ProcessorFeatures.AppleM4,
1098
1096
[TuneAppleM4]>;
1099
1097
1100
1098
// Alias for the latest Apple processor model supported by LLVM.
1101
- def : ProcessorModel<"apple-latest", CycloneModel, ProcessorFeatures.AppleM4,
1102
- [TuneAppleM4]>;
1099
+ def : ProcessorAlias<"apple-latest", "apple-m4">;
1103
1100
1104
1101
1105
1102
// Fujitsu A64FX
0 commit comments