authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-08-30 13:15:28+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2024-09-19 18:20:21-07:00
log662683cafd552404fb704e9d0a8caf1eaaf35af8
tree7873aa1679b79b6be08bc8248d9cdb71aef4f44a
parenta4af54b4e5a64fef672ecf305f5f29fc0458f330

update_cpu_features: Fix feature_overrides logic and replace an omit_cpus misuse.


1 files changed, 5 insertions(+), 8 deletions(-)

tools/update_cpu_features.zig+5-8
...@@ -985,11 +985,8 @@ const llvm_targets = [_]LlvmTarget{...@@ -985,11 +985,8 @@ const llvm_targets = [_]LlvmTarget{
985 .zig_name = "powerpc",985 .zig_name = "powerpc",
986 .llvm_name = "PowerPC",986 .llvm_name = "PowerPC",
987 .td_name = "PPC.td",987 .td_name = "PPC.td",
988 .feature_overrides = &.{988 .omit_cpus = &.{
989 .{989 "ppc32",
990 .llvm_name = "ppc32",
991 .omit = true,
992 },
993 },990 },
994 },991 },
995 .{992 .{
...@@ -1387,7 +1384,7 @@ fn processOneTarget(job: Job) anyerror!void {...@@ -1387,7 +1384,7 @@ fn processOneTarget(job: Job) anyerror!void {
1387 var all_cpus = std.ArrayList(Cpu).init(arena);1384 var all_cpus = std.ArrayList(Cpu).init(arena);
1388 {1385 {
1389 var it = root_map.iterator();1386 var it = root_map.iterator();
1390 root_it: while (it.next()) |kv| {1387 while (it.next()) |kv| {
1391 if (kv.key_ptr.len == 0) continue;1388 if (kv.key_ptr.len == 0) continue;
1392 if (kv.key_ptr.*[0] == '!') continue;1389 if (kv.key_ptr.*[0] == '!') continue;
1393 if (kv.value_ptr.* != .object) continue;1390 if (kv.value_ptr.* != .object) continue;
...@@ -1469,7 +1466,7 @@ fn processOneTarget(job: Job) anyerror!void {...@@ -1469,7 +1466,7 @@ fn processOneTarget(job: Job) anyerror!void {
1469 for (llvm_target.feature_overrides) |feature_override| {1466 for (llvm_target.feature_overrides) |feature_override| {
1470 if (mem.eql(u8, llvm_name, feature_override.llvm_name)) {1467 if (mem.eql(u8, llvm_name, feature_override.llvm_name)) {
1471 if (feature_override.omit) {1468 if (feature_override.omit) {
1472 continue :root_it;1469 continue;
1473 }1470 }
1474 if (feature_override.zig_name) |override_name| {1471 if (feature_override.zig_name) |override_name| {
1475 zig_name = override_name;1472 zig_name = override_name;
...@@ -1515,7 +1512,7 @@ fn processOneTarget(job: Job) anyerror!void {...@@ -1515,7 +1512,7 @@ fn processOneTarget(job: Job) anyerror!void {
1515 for (llvm_target.feature_overrides) |feature_override| {1512 for (llvm_target.feature_overrides) |feature_override| {
1516 if (mem.eql(u8, llvm_name, feature_override.llvm_name)) {1513 if (mem.eql(u8, llvm_name, feature_override.llvm_name)) {
1517 if (feature_override.omit) {1514 if (feature_override.omit) {
1518 continue :root_it;1515 continue;
1519 }1516 }
1520 if (feature_override.zig_name) |override_name| {1517 if (feature_override.zig_name) |override_name| {
1521 zig_name = override_name;1518 zig_name = override_name;