From 80e9cc99a6c31dfd46bd0ba8798fab649cbb2449 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Sun, 9 Oct 2022 11:46:56 +0200 Subject: [PATCH 1/6] Rename graviton product with ARM uarch name --- cpu/microarchitectures.json | 30 ++++++++++++------- ...mazon-graviton => linux-amazon-cortex_a72} | 0 ...zon-graviton2 => linux-amazon-neoverse_n1} | 0 ...zon-graviton3 => linux-amazon-neoverse_v1} | 0 4 files changed, 19 insertions(+), 11 deletions(-) rename tests/targets/{linux-amazon-graviton => linux-amazon-cortex_a72} (100%) rename tests/targets/{linux-amazon-graviton2 => linux-amazon-neoverse_n1} (100%) rename tests/targets/{linux-amazon-graviton3 => linux-amazon-neoverse_v1} (100%) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index 308f0e5..59a15f0 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2209,7 +2209,7 @@ ] } }, - "graviton": { + "cortex_a72": { "from": ["aarch64"], "vendor": "ARM", "features": [ @@ -2235,19 +2235,19 @@ }, { "versions": "6:", - "flags" : "-march=armv8-a+crc+crypto -mtune=cortex-a72" + "flags" : "-mcpu=cortex-a72" } ], "clang" : [ { "versions": "3.9:", - "flags" : "-march=armv8-a+crc+crypto" + "flags" : "-mcpu=cortex-a72" } ] } }, - "graviton2": { - "from": ["graviton"], + "neoverse_n1": { + "from": ["cortex_a72"], "vendor": "ARM", "features": [ "fp", @@ -2296,7 +2296,7 @@ }, { "versions": "9.0:", - "flags" : "-march=armv8.2-a+fp16+rcpc+dotprod+crypto -mtune=neoverse-n1" + "flags" : "-mcpu=neoverse-n1" } ], "clang" : [ @@ -2307,6 +2307,10 @@ { "versions": "5:", "flags" : "-march=armv8.2-a+fp16+rcpc+dotprod+crypto" + }, + { + "versions": "10:", + "flags" : "-mcpu=neoverse-n1" } ], "arm" : [ @@ -2317,11 +2321,11 @@ ] } }, - "graviton3": { - "from": ["graviton2"], + "neoverse_v1": { + "from": ["neoverse_n1"], "vendor": "ARM", "features": [ - "fp", + "fp", "asimd", "evtstrm", "aes", @@ -2384,11 +2388,11 @@ }, { "versions": "9.0:9.9", - "flags" : "-march=armv8.4-a+crypto+rcpc+sha3+sm4+sve+rng+nodotprod -mtune=neoverse-v1" + "flags" : "-mcpu=neoverse-v1" }, { "versions": "10.0:", - "flags" : "-march=armv8.4-a+crypto+rcpc+sha3+sm4+sve+rng+ssbs+i8mm+bf16+nodotprod -mtune=neoverse-v1" + "flags" : "-mcpu=neoverse-v1" } ], @@ -2404,6 +2408,10 @@ { "versions": "11:", "flags" : "-march=armv8.4-a+sve+ssbs+fp16+bf16+crypto+i8mm+rng" + }, + { + "versions": "12:", + "flags" : "-mcpu=neoverse-v1" } ], "arm" : [ diff --git a/tests/targets/linux-amazon-graviton b/tests/targets/linux-amazon-cortex_a72 similarity index 100% rename from tests/targets/linux-amazon-graviton rename to tests/targets/linux-amazon-cortex_a72 diff --git a/tests/targets/linux-amazon-graviton2 b/tests/targets/linux-amazon-neoverse_n1 similarity index 100% rename from tests/targets/linux-amazon-graviton2 rename to tests/targets/linux-amazon-neoverse_n1 diff --git a/tests/targets/linux-amazon-graviton3 b/tests/targets/linux-amazon-neoverse_v1 similarity index 100% rename from tests/targets/linux-amazon-graviton3 rename to tests/targets/linux-amazon-neoverse_v1 From 8b8583efbcf6623dd8219f9c28b615eae9aa9ba9 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Sun, 9 Oct 2022 13:50:51 +0200 Subject: [PATCH 2/6] Add generic ARMv8.X-a architectures up to v8.4 --- cpu/microarchitectures.json | 126 +++++++++++++++++++++++++++++++++++- 1 file changed, 125 insertions(+), 1 deletion(-) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index 59a15f0..be647a8 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2093,6 +2093,130 @@ ] } }, + "armv8.1a": { + "from": ["aarch64"], + "vendor": "generic", + "features": [], + "compilers": { + "gcc": [ + { + "versions": "5:", + "flags": "-march=armv8.1-a -mtune=generic" + } + ], + "clang": [ + { + "versions": ":", + "flags": "-march=armv8.1-a -mtune=generic" + } + ], + "apple-clang": [ + { + "versions": ":", + "flags": "-march=armv8.1-a -mtune=generic" + } + ], + "arm": [ + { + "versions": ":", + "flags": "-march=armv8.1-a -mtune=generic" + } + ] + } + }, + "armv8.2a": { + "from": ["armv8.1a"], + "vendor": "generic", + "features": [], + "compilers": { + "gcc": [ + { + "versions": "6:", + "flags": "-march=armv8.2-a -mtune=generic" + } + ], + "clang": [ + { + "versions": ":", + "flags": "-march=armv8.2-a -mtune=generic" + } + ], + "apple-clang": [ + { + "versions": ":", + "flags": "-march=armv8.2-a -mtune=generic" + } + ], + "arm": [ + { + "versions": ":", + "flags": "-march=armv8.2-a -mtune=generic" + } + ] + } + }, + "armv8.3a": { + "from": ["armv8.2a"], + "vendor": "generic", + "features": [], + "compilers": { + "gcc": [ + { + "versions": "6:", + "flags": "-march=armv8.3-a -mtune=generic" + } + ], + "clang": [ + { + "versions": "6:", + "flags": "-march=armv8.3-a -mtune=generic" + } + ], + "apple-clang": [ + { + "versions": ":", + "flags": "-march=armv8.3-a -mtune=generic" + } + ], + "arm": [ + { + "versions": ":", + "flags": "-march=armv8.3-a -mtune=generic" + } + ] + } + }, + "armv8.4a": { + "from": ["armv8.3a"], + "vendor": "generic", + "features": [], + "compilers": { + "gcc": [ + { + "versions": "8:", + "flags": "-march=armv8.4-a -mtune=generic" + } + ], + "clang": [ + { + "versions": "8:", + "flags": "-march=armv8.4-a -mtune=generic" + } + ], + "apple-clang": [ + { + "versions": ":", + "flags": "-march=armv8.4-a -mtune=generic" + } + ], + "arm": [ + { + "versions": ":", + "flags": "-march=armv8.4-a -mtune=generic" + } + ] + } + }, "thunderx2": { "from": ["aarch64"], "vendor": "Cavium", @@ -2247,7 +2371,7 @@ } }, "neoverse_n1": { - "from": ["cortex_a72"], + "from": ["cortex_a72", "armv8.2a"], "vendor": "ARM", "features": [ "fp", From 1170415391121a52576933eea54ed1e755c6cf97 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Sun, 9 Oct 2022 14:22:10 +0200 Subject: [PATCH 3/6] fixup! Add generic ARMv8.X-a architectures up to v8.4 --- cpu/microarchitectures.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index be647a8..19fae8a 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2218,7 +2218,7 @@ } }, "thunderx2": { - "from": ["aarch64"], + "from": ["armv8.1a"], "vendor": "Cavium", "features": [ "fp", @@ -2334,7 +2334,7 @@ } }, "cortex_a72": { - "from": ["aarch64"], + "from": ["armv8.2a"], "vendor": "ARM", "features": [ "fp", From 5f1fa2cebf18487ea9667257829edf7c15d0ec64 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Sun, 9 Oct 2022 14:23:37 +0200 Subject: [PATCH 4/6] fixup! fixup! Add generic ARMv8.X-a architectures up to v8.4 --- cpu/microarchitectures.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index 19fae8a..117902f 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2265,7 +2265,7 @@ } }, "a64fx": { - "from": ["aarch64"], + "from": ["armv8.2a"], "vendor": "Fujitsu", "features": [ "fp", @@ -2334,7 +2334,7 @@ } }, "cortex_a72": { - "from": ["armv8.2a"], + "from": ["aarch64"], "vendor": "ARM", "features": [ "fp", From 6168c31199defd965c808ede43e002d256479355 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Mon, 10 Oct 2022 09:01:45 +0200 Subject: [PATCH 5/6] Fix indentation by removing spurious tab --- cpu/microarchitectures.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index 117902f..4b89c79 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2449,7 +2449,7 @@ "from": ["neoverse_n1"], "vendor": "ARM", "features": [ - "fp", + "fp", "asimd", "evtstrm", "aes", From f7db3b64154e8f3ff533058a4b546a7de5dadab2 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Mon, 17 Oct 2022 17:05:39 +0200 Subject: [PATCH 6/6] neoverse-v1: add branch into generic armv8.4a --- cpu/microarchitectures.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpu/microarchitectures.json b/cpu/microarchitectures.json index 4b89c79..0e99eed 100644 --- a/cpu/microarchitectures.json +++ b/cpu/microarchitectures.json @@ -2446,7 +2446,7 @@ } }, "neoverse_v1": { - "from": ["neoverse_n1"], + "from": ["neoverse_n1", "armv8.4a"], "vendor": "ARM", "features": [ "fp",