def ProcSwift : SubtargetFeature<"swift", "ARMProcFamily", "Swift",
"Swift ARM processors", []>;
-def ProcExynosM1 : SubtargetFeature<"exynosm1", "ARMProcFamily", "ExynosM1",
- "Samsung Exynos-Mx processors", []>;
+def ProcExynos : SubtargetFeature<"exynos", "ARMProcFamily", "Exynos",
+ "Samsung Exynos processors",
+ [FeatureZCZeroing,
+ FeatureUseWideStrideVFP,
+ FeatureUseAA,
+ FeatureSplatVFPToNeon,
+ FeatureSlowVGETLNi32,
+ FeatureSlowVDUP32,
+ FeatureSlowFPBrcc,
+ FeatureProfUnpredicate,
+ FeatureHWDivThumb,
+ FeatureHWDivARM,
+ FeatureHasSlowFPVMLx,
+ FeatureHasRetAddrStack,
+ FeatureExpandMLx,
+ FeatureCrypto,
+ FeatureCRC]>;
def ProcR4 : SubtargetFeature<"r4", "ARMProcFamily", "CortexR4",
"Cortex-R4 ARM processors", []>;
FeatureZCZeroing,
FeatureNoPostRASched]>;
-def : ProcNoItin<"exynos-m1", [ARMv8a, ProcExynosM1,
- FeatureZCZeroing,
- FeatureUseWideStrideVFP,
- FeatureUseAA,
- FeatureSplatVFPToNeon,
- FeatureSlowVGETLNi32,
- FeatureSlowVDUP32,
- FeatureSlowFPBrcc,
- FeatureProfUnpredicate,
- FeatureHWDivThumb,
- FeatureHWDivARM,
- FeatureHasSlowFPVMLx,
- FeatureHasRetAddrStack,
- FeatureExpandMLx,
- FeatureCrypto,
- FeatureCRC]>;
-
-def : ProcNoItin<"exynos-m2", [ARMv8a, ProcExynosM1,
- FeatureZCZeroing,
- FeatureUseWideStrideVFP,
- FeatureUseAA,
- FeatureSplatVFPToNeon,
- FeatureSlowVGETLNi32,
- FeatureSlowVDUP32,
- FeatureSlowFPBrcc,
- FeatureProfUnpredicate,
- FeatureHWDivThumb,
- FeatureHWDivARM,
- FeatureHasSlowFPVMLx,
- FeatureHasRetAddrStack,
- FeatureExpandMLx,
- FeatureCrypto,
- FeatureCRC]>;
-
-def : ProcNoItin<"exynos-m3", [ARMv8a, ProcExynosM1,
- FeatureZCZeroing,
- FeatureUseWideStrideVFP,
- FeatureUseAA,
- FeatureSplatVFPToNeon,
- FeatureSlowVGETLNi32,
- FeatureSlowVDUP32,
- FeatureSlowFPBrcc,
- FeatureProfUnpredicate,
- FeatureHWDivThumb,
- FeatureHWDivARM,
- FeatureHasSlowFPVMLx,
- FeatureHasRetAddrStack,
- FeatureExpandMLx,
- FeatureCrypto,
- FeatureCRC]>;
-
-def : ProcNoItin<"exynos-m4", [ARMv8a, ProcExynosM1,
- FeatureZCZeroing,
- FeatureUseWideStrideVFP,
- FeatureUseAA,
- FeatureSplatVFPToNeon,
- FeatureSlowVGETLNi32,
- FeatureSlowVDUP32,
- FeatureSlowFPBrcc,
- FeatureProfUnpredicate,
- FeatureHWDivThumb,
- FeatureHWDivARM,
- FeatureHasSlowFPVMLx,
- FeatureHasRetAddrStack,
- FeatureExpandMLx,
- FeatureCrypto,
- FeatureCRC]>;
+def : ProcNoItin<"exynos-m1", [ARMv8a, ProcExynos]>;
+def : ProcNoItin<"exynos-m2", [ARMv8a, ProcExynos]>;
+def : ProcNoItin<"exynos-m3", [ARMv8a, ProcExynos]>;
+def : ProcNoItin<"exynos-m4", [ARMv8a, ProcExynos]>;
def : ProcNoItin<"kryo", [ARMv8a, ProcKryo,
FeatureHWDivThumb,