@@ -620,7 +620,6 @@ end arch iwmmxt2
# [tune for <cpu-name>]
# [tune flags <list>]
# architecture <name>
-# [fpu <name>]
# [isa <additional-isa-flags-list>]
# [option <name> add|remove <isa-list>]*
# [optalias <name> <optname>]*
@@ -633,7 +632,7 @@ end arch iwmmxt2
# isa flags are appended to those defined by the architecture.
# Each add option must have a distinct feature set and each remove
# option must similarly have a distinct feature set. Option aliases can be
-# added with the optalias statement
+# added with the optalias statement.
# V4 Architecture Processors
begin cpu arm8
@@ -778,8 +777,7 @@ end cpu arm1020t
# V5TE Architecture Processors
begin cpu arm9e
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs 9e
end cpu arm9e
@@ -787,8 +785,7 @@ end cpu arm9e
begin cpu arm946e-s
cname arm946es
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs 9e
end cpu arm946e-s
@@ -796,8 +793,7 @@ end cpu arm946e-s
begin cpu arm966e-s
cname arm966es
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs 9e
end cpu arm966e-s
@@ -805,32 +801,28 @@ end cpu arm966e-s
begin cpu arm968e-s
cname arm968es
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs 9e
end cpu arm968e-s
begin cpu arm10e
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs fastmul
end cpu arm10e
begin cpu arm1020e
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs fastmul
end cpu arm1020e
begin cpu arm1022e
tune flags LDSCHED
- architecture armv5te
- fpu vfpv2
+ architecture armv5te+fp
option nofp remove ALL_FP
costs fastmul
end cpu arm1022e
@@ -883,8 +875,7 @@ end cpu fa726te
begin cpu arm926ej-s
cname arm926ejs
tune flags LDSCHED
- architecture armv5tej
- fpu vfpv2
+ architecture armv5tej+fp
option nofp remove ALL_FP
costs 9e
end cpu arm926ej-s
@@ -892,8 +883,7 @@ end cpu arm926ej-s
begin cpu arm1026ej-s
cname arm1026ejs
tune flags LDSCHED
- architecture armv5tej
- fpu vfpv2
+ architecture armv5tej+fp
option nofp remove ALL_FP
costs 9e
end cpu arm1026ej-s
@@ -910,8 +900,7 @@ end cpu arm1136j-s
begin cpu arm1136jf-s
cname arm1136jfs
tune flags LDSCHED
- architecture armv6j
- fpu vfpv2
+ architecture armv6j+fp
costs 9e
end cpu arm1136jf-s
@@ -925,8 +914,7 @@ end cpu arm1176jz-s
begin cpu arm1176jzf-s
cname arm1176jzfs
tune flags LDSCHED
- architecture armv6kz
- fpu vfpv2
+ architecture armv6kz+fp
costs 9e
end cpu arm1176jzf-s
@@ -938,8 +926,7 @@ end cpu mpcorenovfp
begin cpu mpcore
tune flags LDSCHED
- architecture armv6k
- fpu vfpv2
+ architecture armv6k+fp
costs 9e
end cpu mpcore
@@ -953,8 +940,7 @@ end cpu arm1156t2-s
begin cpu arm1156t2f-s
cname arm1156t2fs
tune flags LDSCHED
- architecture armv6t2
- fpu vfpv2
+ architecture armv6t2+fp
costs v6t2
end cpu arm1156t2f-s
@@ -1012,8 +998,7 @@ end cpu cortex-m0plus.small-multiply
begin cpu generic-armv7-a
cname genericv7a
tune flags LDSCHED
- architecture armv7-a
- fpu vfpv3-d16
+ architecture armv7-a+fp
option vfpv3-d16 add VFPv3 FP_DBL
option vfpv3 add VFPv3 FP_D32
option vfpv3-d16-fp16 add VFPv3 FP_DBL fp16conv
@@ -1033,8 +1018,7 @@ end cpu generic-armv7-a
begin cpu cortex-a5
cname cortexa5
tune flags LDSCHED
- architecture armv7-a
- fpu neon-fp16
+ architecture armv7-a+neon-fp16
option nosimd remove ALL_SIMD
option nofp remove ALL_FP
costs cortex_a5
@@ -1043,8 +1027,7 @@ end cpu cortex-a5
begin cpu cortex-a7
cname cortexa7
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nosimd remove ALL_SIMD
option nofp remove ALL_FP
costs cortex_a7
@@ -1053,8 +1036,7 @@ end cpu cortex-a7
begin cpu cortex-a8
cname cortexa8
tune flags LDSCHED
- architecture armv7-a
- fpu neon-vfpv3
+ architecture armv7-a+simd
option nofp remove ALL_FP
costs cortex_a8
end cpu cortex-a8
@@ -1062,8 +1044,7 @@ end cpu cortex-a8
begin cpu cortex-a9
cname cortexa9
tune flags LDSCHED
- architecture armv7-a
- fpu neon-fp16
+ architecture armv7-a+neon-fp16
option nosimd remove ALL_SIMD
option nofp remove ALL_FP
costs cortex_a9
@@ -1073,8 +1054,7 @@ begin cpu cortex-a12
cname cortexa12
tune for cortex-a17
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nofp remove ALL_FP
costs cortex_a12
end cpu cortex-a12
@@ -1082,8 +1062,7 @@ end cpu cortex-a12
begin cpu cortex-a15
cname cortexa15
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nofp remove ALL_FP
costs cortex_a15
end cpu cortex-a15
@@ -1091,8 +1070,7 @@ end cpu cortex-a15
begin cpu cortex-a17
cname cortexa17
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nofp remove ALL_FP
costs cortex_a12
end cpu cortex-a17
@@ -1107,16 +1085,14 @@ end cpu cortex-r4
begin cpu cortex-r4f
cname cortexr4f
tune flags LDSCHED
- architecture armv7-r
- fpu vfpv3-d16
+ architecture armv7-r+fp
costs cortex
end cpu cortex-r4f
begin cpu cortex-r5
cname cortexr5
tune flags LDSCHED
- architecture armv7-r+idiv
- fpu vfpv3-d16
+ architecture armv7-r+idiv+fp
option nofp.dp remove FP_DBL
option nofp remove ALL_FP
costs cortex
@@ -1125,8 +1101,7 @@ end cpu cortex-r5
begin cpu cortex-r7
cname cortexr7
tune flags LDSCHED
- architecture armv7-r+idiv
- fpu vfpv3-d16
+ architecture armv7-r+idiv+fp
option nofp remove ALL_FP
costs cortex
end cpu cortex-r7
@@ -1135,8 +1110,7 @@ begin cpu cortex-r8
cname cortexr8
tune for cortex-r7
tune flags LDSCHED
- architecture armv7-r+idiv
- fpu vfpv3-d16
+ architecture armv7-r+idiv+fp
option nofp remove ALL_FP
costs cortex
end cpu cortex-r8
@@ -1144,9 +1118,8 @@ end cpu cortex-r8
begin cpu cortex-m7
cname cortexm7
tune flags LDSCHED
- architecture armv7e-m
+ architecture armv7e-m+fp.dp
isa quirk_no_volatile_ce
- fpu fpv5-d16
option nofp.dp remove FP_DBL
option nofp remove ALL_FP
costs cortex_m7
@@ -1155,8 +1128,7 @@ end cpu cortex-m7
begin cpu cortex-m4
cname cortexm4
tune flags LDSCHED
- architecture armv7e-m
- fpu fpv4-sp-d16
+ architecture armv7e-m+fp
option nofp remove ALL_FP
costs v7m
end cpu cortex-m4
@@ -1181,8 +1153,7 @@ begin cpu cortex-a15.cortex-a7
cname cortexa15cortexa7
tune for cortex-a7
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nofp remove ALL_FP
costs cortex_a15
end cpu cortex-a15.cortex-a7
@@ -1191,8 +1162,7 @@ begin cpu cortex-a17.cortex-a7
cname cortexa17cortexa7
tune for cortex-a7
tune flags LDSCHED
- architecture armv7ve
- fpu neon-vfpv4
+ architecture armv7ve+simd
option nofp remove ALL_FP
costs cortex_a12
end cpu cortex-a17.cortex-a7
@@ -1203,8 +1173,7 @@ begin cpu cortex-a32
cname cortexa32
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
option nofp remove ALL_FP
costs cortex_a35
@@ -1214,8 +1183,7 @@ begin cpu cortex-a35
cname cortexa35
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
option nofp remove ALL_FP
costs cortex_a35
@@ -1224,8 +1192,7 @@ end cpu cortex-a35
begin cpu cortex-a53
cname cortexa53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
option nofp remove ALL_FP
costs cortex_a53
@@ -1234,8 +1201,7 @@ end cpu cortex-a53
begin cpu cortex-a57
cname cortexa57
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a57
@@ -1244,8 +1210,7 @@ begin cpu cortex-a72
cname cortexa72
tune for cortex-a57
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a72
@@ -1254,8 +1219,7 @@ begin cpu cortex-a73
cname cortexa73
tune for cortex-a57
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a73
end cpu cortex-a73
@@ -1263,16 +1227,14 @@ end cpu cortex-a73
begin cpu exynos-m1
cname exynosm1
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs exynosm1
end cpu exynos-m1
begin cpu xgene1
tune flags LDSCHED
- architecture armv8-a
- fpu neon-fp-armv8
+ architecture armv8-a+simd
option crypto add FP_ARMv8 CRYPTO
costs xgene1
end cpu xgene1
@@ -1282,8 +1244,7 @@ begin cpu cortex-a57.cortex-a53
cname cortexa57cortexa53
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a57.cortex-a53
@@ -1292,8 +1253,7 @@ begin cpu cortex-a72.cortex-a53
cname cortexa72cortexa53
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a72.cortex-a53
@@ -1302,8 +1262,7 @@ begin cpu cortex-a73.cortex-a35
cname cortexa73cortexa35
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a73
end cpu cortex-a73.cortex-a35
@@ -1312,8 +1271,7 @@ begin cpu cortex-a73.cortex-a53
cname cortexa73cortexa53
tune for cortex-a53
tune flags LDSCHED
- architecture armv8-a+crc
- fpu neon-fp-armv8
+ architecture armv8-a+crc+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a73
end cpu cortex-a73.cortex-a53
@@ -1324,8 +1282,7 @@ begin cpu cortex-a55
cname cortexa55
tune for cortex-a53
tune flags LDSCHED
- architecture armv8.2-a+fp16+dotprod
- fpu neon-fp-armv8
+ architecture armv8.2-a+fp16+dotprod+simd
option crypto add FP_ARMv8 CRYPTO
option nofp remove ALL_FP
costs cortex_a53
@@ -1335,8 +1292,7 @@ begin cpu cortex-a75
cname cortexa75
tune for cortex-a57
tune flags LDSCHED
- architecture armv8.2-a+fp16+dotprod
- fpu neon-fp-armv8
+ architecture armv8.2-a+fp16+dotprod+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a73
end cpu cortex-a75
@@ -1345,8 +1301,7 @@ begin cpu cortex-a76
cname cortexa76
tune for cortex-a57
tune flags LDSCHED
- architecture armv8.2-a+fp16+dotprod
- fpu neon-fp-armv8
+ architecture armv8.2-a+fp16+dotprod+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a76
@@ -1356,8 +1311,7 @@ begin cpu cortex-a75.cortex-a55
cname cortexa75cortexa55
tune for cortex-a53
tune flags LDSCHED
- architecture armv8.2-a+fp16+dotprod
- fpu neon-fp-armv8
+ architecture armv8.2-a+fp16+dotprod+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a73
end cpu cortex-a75.cortex-a55
@@ -1366,8 +1320,7 @@ begin cpu cortex-a76.cortex-a55
cname cortexa76cortexa55
tune for cortex-a53
tune flags LDSCHED
- architecture armv8.2-a+fp16+dotprod
- fpu neon-fp-armv8
+ architecture armv8.2-a+fp16+dotprod+simd
option crypto add FP_ARMv8 CRYPTO
costs cortex_a57
end cpu cortex-a76.cortex-a55
@@ -1383,8 +1336,7 @@ end cpu cortex-m23
begin cpu cortex-m33
cname cortexm33
tune flags LDSCHED
- architecture armv8-m.main+dsp
- fpu fpv5-sp-d16
+ architecture armv8-m.main+dsp+fp
option nofp remove ALL_FP
option nodsp remove armv7em
costs v7m
@@ -1395,7 +1347,6 @@ begin cpu cortex-r52
cname cortexr52
tune flags LDSCHED
architecture armv8-r+crc+simd
- fpu neon-fp-armv8
option nofp.dp remove FP_DBL ALL_SIMD
costs cortex
end cpu cortex-r52
@@ -289,9 +289,6 @@ function gen_comm_data () {
}
all_isa_bits = all_isa_bits " " arch_opt_isa[feats[1],feats[m]]
}
- if (cpus[n] in cpu_fpu) {
- all_isa_bits = all_isa_bits " " fpu_isa[cpu_fpu[cpus[n]]]
- }
if (cpus[n] in cpu_isa) {
all_isa_bits = all_isa_bits " " cpu_isa[cpus[n]]
}
@@ -662,13 +659,6 @@ BEGIN {
parse_ok = 1
}
-/^[ ]*fpu / {
- if (NF != 2) fatal("syntax: fpu <fpu-name>")
- if (cpu_name == "") fatal("\"fpu\" outside of cpu block")
- cpu_fpu[cpu_name] = $2
- parse_ok = 1
-}
-
/^[ ]*isa / {
if (NF < 2) fatal("syntax: isa <feature-or-fgroup> [<feature-or-fgroup>]*")
flags=""