authorgravatar for goon.pri.low@gmail.comKendall Condon <goon.pri.low@gmail.com> 2026-05-03 20:28:37-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-05-25 18:38:01-07:00
log65819004f32dda70b6f35f7226de005155f68a4c
treed5c4668314089b9fce7219c3c5a2f2393d15cbd0
parentc805c7228978df4af34ee0d63948234fb0ab504e

workaround surfaced backend bugs

self-hosted wasm workaround provided by pavelverigo in #31991 powerpc workarounds provided by alexrp in #31991

3 files changed, 12 insertions(+), 0 deletions(-)

lib/std/fmt/float.zig+2
...@@ -1646,6 +1646,8 @@ test "format f64" {...@@ -1646,6 +1646,8 @@ test "format f64" {
1646}1646}
16471647
1648test "format f80" {1648test "format f80" {
1649 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
1650
1649 try check(f80, 0.0, "0e0");1651 try check(f80, 0.0, "0e0");
1650 try check(f80, -0.0, "-0e0");1652 try check(f80, -0.0, "-0e0");
1651 try check(f80, 1.0, "1e0");1653 try check(f80, 1.0, "1e0");
test/behavior/vector.zig+1
...@@ -748,6 +748,7 @@ test "vector reduce operation" {...@@ -748,6 +748,7 @@ test "vector reduce operation" {
748 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;748 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
749 if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;749 if (builtin.zig_backend == .stage2_c and builtin.cpu.arch.isArm()) return error.SkipZigTest;
750 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;750 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
751 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch.isPowerPC()) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/195562
751752
752 const S = struct {753 const S = struct {
753 fn testReduce(comptime op: std.builtin.ReduceOp, x: anytype, expected: anytype) !void {754 fn testReduce(comptime op: std.builtin.ReduceOp, x: anytype, expected: anytype) !void {
test/tests.zig+9
...@@ -2612,6 +2612,10 @@ fn addOneModuleTest(...@@ -2612,6 +2612,10 @@ fn addOneModuleTest(
2612 if (mem.eql(u8, options.name, "compiler-rt") or mem.eql(u8, options.name, "libc")) {2612 if (mem.eql(u8, options.name, "compiler-rt") or mem.eql(u8, options.name, "libc")) {
2613 these_tests.root_module.stack_protector = false;2613 these_tests.root_module.stack_protector = false;
2614 }2614 }
2615 // https://github.com/llvm/llvm-project/issues/195561
2616 if (target.cpu.arch.isPowerPC()) {
2617 these_tests.root_module.stack_protector = false;
2618 }
2615 if (options.build_options) |build_options| {2619 if (options.build_options) |build_options| {
2616 these_tests.root_module.addOptions("build_options", build_options);2620 these_tests.root_module.addOptions("build_options", build_options);
2617 }2621 }
...@@ -2857,6 +2861,11 @@ pub fn addCAbiTests(b: *std.Build, options: CAbiTestOptions) *Step {...@@ -2857,6 +2861,11 @@ pub fn addCAbiTests(b: *std.Build, options: CAbiTestOptions) *Step {
2857 .max_rss = options.max_rss,2861 .max_rss = options.max_rss,
2858 });2862 });
28592863
2864 // https://github.com/llvm/llvm-project/issues/195561
2865 if (target.cpu.arch.isPowerPC()) {
2866 test_step.root_module.stack_protector = false;
2867 }
2868
2860 // This test is intentionally trying to check if the external ABI is2869 // This test is intentionally trying to check if the external ABI is
2861 // done properly. LTO would be a hindrance to this.2870 // done properly. LTO would be a hindrance to this.
2862 test_step.lto = .none;2871 test_step.lto = .none;