commit b31b309b53ccafd8f1de01cfe1065c84d147a1c7 (tree)
parent 5411358956ef1c07e28ab477b10b66ade1000c58
Author: Alex Rønne Petersen <alex@alexrp.com>
Date: Sun, 27 Apr 2025 00:05:37 +0200
test: Configure emit_asm/emit_bin correctly for some targets in llvm_targets.
Diffstat:
1 file changed, 19 insertions(+), 0 deletions(-)
diff --git a/test/src/Cases.zig b/test/src/Cases.zig
@@ -174,6 +174,23 @@ pub fn exeFromCompiledC(ctx: *Cases, name: []const u8, target_query: std.Target.
}
pub fn addObjLlvm(ctx: *Cases, name: []const u8, target: std.Build.ResolvedTarget) *Case {
+ const can_emit_asm = switch (target.result.cpu.arch) {
+ .csky,
+ .xtensa,
+ => false,
+ else => true,
+ };
+ const can_emit_bin = switch (target.result.cpu.arch) {
+ .arc,
+ .csky,
+ .nvptx,
+ .nvptx64,
+ .xcore,
+ .xtensa,
+ => false,
+ else => true,
+ };
+
ctx.cases.append(.{
.name = name,
.target = target,
@@ -182,6 +199,8 @@ pub fn addObjLlvm(ctx: *Cases, name: []const u8, target: std.Build.ResolvedTarge
.output_mode = .Obj,
.deps = std.ArrayList(DepModule).init(ctx.arena),
.backend = .llvm,
+ .emit_bin = can_emit_bin,
+ .emit_asm = can_emit_asm,
}) catch @panic("out of memory");
return &ctx.cases.items[ctx.cases.items.len - 1];
}