update CPU features to LLVM 16

This commit is contained in:
Andrew Kelley
2023-01-26 16:33:40 -07:00
parent 1e7083d09c
commit 0ca3582a86
21 changed files with 1784 additions and 155 deletions

View File

@@ -79,6 +79,10 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "neoversev1",
.flatten = true,
},
.{
.llvm_name = "neoversev2",
.flatten = true,
},
.{
.llvm_name = "neoverse512tvb",
.flatten = true,
@@ -137,6 +141,14 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "a77",
.flatten = true,
},
.{
.llvm_name = "a715",
.flatten = true,
},
.{
.llvm_name = "ampere1a",
.flatten = true,
},
.{
.llvm_name = "apple-a7",
.flatten = true,
@@ -161,6 +173,14 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "apple-a14",
.flatten = true,
},
.{
.llvm_name = "apple-a15",
.flatten = true,
},
.{
.llvm_name = "apple-a16",
.flatten = true,
},
.{
.llvm_name = "apple-a7-sysreg",
.flatten = true,
@@ -181,6 +201,10 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "cortex-x2",
.flatten = true,
},
.{
.llvm_name = "cortex-x3",
.flatten = true,
},
.{
.llvm_name = "falkor",
.flatten = true,
@@ -594,6 +618,10 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "armv8.8-a",
.zig_name = "v8_8a",
},
.{
.llvm_name = "armv8.9-a",
.zig_name = "v8_9a",
},
.{
.llvm_name = "armv8-a",
.zig_name = "v8a",
@@ -622,6 +650,10 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "armv9.3-a",
.zig_name = "v9_3a",
},
.{
.llvm_name = "armv9.4-a",
.zig_name = "v9_4a",
},
.{
.llvm_name = "armv9-a",
.zig_name = "v9a",
@@ -710,6 +742,10 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "v8.8a",
.zig_name = "has_v8_8a",
},
.{
.llvm_name = "v8.9a",
.zig_name = "has_v8_9a",
},
.{
.llvm_name = "v9a",
.zig_name = "has_v9a",
@@ -726,6 +762,33 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "v9.3a",
.zig_name = "has_v9_3a",
},
.{
.llvm_name = "v9.4a",
.zig_name = "has_v9_4a",
},
},
// LLVM removed support for v2 and v3 but zig wants to support targeting old hardware
.extra_features = &.{
.{
.zig_name = "v2",
.desc = "ARMv2 architecture",
.deps = &.{"strict_align"},
},
.{
.zig_name = "v2a",
.desc = "ARMv2a architecture",
.deps = &.{"strict_align"},
},
.{
.zig_name = "v3",
.desc = "ARMv3 architecture",
.deps = &.{"strict_align"},
},
.{
.zig_name = "v3m",
.desc = "ARMv3m architecture",
.deps = &.{"strict_align"},
},
},
},
.{
@@ -753,6 +816,11 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "Lanai",
.td_name = "Lanai.td",
},
.{
.zig_name = "loongarch",
.llvm_name = "LoongArch",
.td_name = "LoongArch.td",
},
.{
.zig_name = "m68k",
.llvm_name = "M68k",
@@ -812,6 +880,12 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "Sparc",
.td_name = "Sparc.td",
},
// TODO: merge tools/update_spirv_features.zig into this script
//.{
// .zig_name = "spirv",
// .llvm_name = "SPIRV",
// .td_name = "SPIRV.td",
//},
.{
.zig_name = "s390x",
.llvm_name = "SystemZ",
@@ -847,6 +921,11 @@ const llvm_targets = [_]LlvmTarget{
.llvm_name = "XCore",
.td_name = "XCore.td",
},
.{
.zig_name = "xtensa",
.llvm_name = "Xtensa",
.td_name = "Xtensa.td",
},
};
pub fn main() anyerror!void {