Commit 03de5ec6dd

Andrew Kelley <andrew@ziglang.org>
2021-02-27 07:52:04
tools/update_cpu_features: handle ISAs with no features
These are represented by not having a file for them.
1 parent a804944
Changed files (2)
lib/std/target.zig
@@ -430,8 +430,8 @@ pub const Target = struct {
     pub const powerpc = @import("target/powerpc.zig");
     pub const riscv = @import("target/riscv.zig");
     pub const sparc = @import("target/sparc.zig");
-    pub const spirv = @import("target/spirv.zig");
     pub const systemz = @import("target/systemz.zig");
+    pub const ve = @import("target/ve.zig");
     pub const wasm = @import("target/wasm.zig");
     pub const x86 = @import("target/x86.zig");
 
tools/update_cpu_features.zig
@@ -320,6 +320,13 @@ fn processOneTarget(job: Job) anyerror!void {
     defer target_dir.close();
 
     const zig_code_basename = try std.fmt.allocPrint(arena, "{s}.zig", .{llvm_target.zig_name});
+
+    if (all_features.items.len == 0) {
+        // We represent this with an empty file.
+        try target_dir.deleteTree(zig_code_basename);
+        return;
+    }
+
     var zig_code_file = try target_dir.createFile(zig_code_basename, .{});
     defer zig_code_file.close();