tools/update_cpu_features: handle ISAs with no features

These are represented by not having a file for them.
This commit is contained in:
Andrew Kelley 2021-02-26 23:52:04 -07:00
parent a804944c7d
commit 03de5ec6dd
2 changed files with 8 additions and 1 deletions

View File

@ -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");

View File

@ -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();