authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2026-07-23 09:49:03-04:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2026-07-27 14:44:41-04:00
log3b8913a321dbd0ff7de7ac5ac9d4dd82a4235a2e
tree03110019584c8e15a57705974da356704d5a6ccc
parent556e9a455c1372d39bf7e73513d879aa199acc07

llvm: enable passing tests

Closes #10875 Closes #12396 Closes #20680 Closes #25734 Closes #30854 Closes #35519

18 files changed, 8 insertions(+), 96 deletions(-)

lib/std/http/test.zig+1-20
...@@ -1,5 +1,4 @@...@@ -1,5 +1,4 @@
1const builtin = @import("builtin");1const builtin = @import("builtin");
2const native_endian = builtin.cpu.arch.endian();
32
4const std = @import("std");3const std = @import("std");
5const http = std.http;4const http = std.http;
...@@ -34,7 +33,6 @@ test "content length reader state update" {...@@ -34,7 +33,6 @@ test "content length reader state update" {
34}33}
3534
36test "trailers" {35test "trailers" {
37 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
38 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/3080636 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
3937
40 const io = std.testing.io;38 const io = std.testing.io;
...@@ -121,7 +119,6 @@ test "trailers" {...@@ -121,7 +119,6 @@ test "trailers" {
121}119}
122120
123test "HTTP server handles a chunked transfer coding request" {121test "HTTP server handles a chunked transfer coding request" {
124 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
125 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806122 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
126123
127 const io = std.testing.io;124 const io = std.testing.io;
...@@ -190,7 +187,6 @@ test "HTTP server handles a chunked transfer coding request" {...@@ -190,7 +187,6 @@ test "HTTP server handles a chunked transfer coding request" {
190}187}
191188
192test "echo content server" {189test "echo content server" {
193 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
194 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806190 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
195191
196 const io = std.testing.io;192 const io = std.testing.io;
...@@ -281,12 +277,11 @@ test "echo content server" {...@@ -281,12 +277,11 @@ test "echo content server" {
281}277}
282278
283test "Server.Request.respondStreaming non-chunked, unknown content-length" {279test "Server.Request.respondStreaming non-chunked, unknown content-length" {
284 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
285 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806280 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
286281
287 const io = std.testing.io;282 const io = std.testing.io;
288283
289 if (builtin.os.tag == .windows) {284 if (builtin.cpu.arch == .aarch64 and builtin.os.tag == .windows) {
290 // https://github.com/ziglang/zig/issues/21457285 // https://github.com/ziglang/zig/issues/21457
291 return error.SkipZigTest;286 return error.SkipZigTest;
292 }287 }
...@@ -360,7 +355,6 @@ test "Server.Request.respondStreaming non-chunked, unknown content-length" {...@@ -360,7 +355,6 @@ test "Server.Request.respondStreaming non-chunked, unknown content-length" {
360}355}
361356
362test "receiving arbitrary http headers from the client" {357test "receiving arbitrary http headers from the client" {
363 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
364 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806358 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
365359
366 const io = std.testing.io;360 const io = std.testing.io;
...@@ -426,16 +420,10 @@ test "receiving arbitrary http headers from the client" {...@@ -426,16 +420,10 @@ test "receiving arbitrary http headers from the client" {
426}420}
427421
428test "general client/server API coverage" {422test "general client/server API coverage" {
429 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
430 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806423 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
431424
432 const io = std.testing.io;425 const io = std.testing.io;
433426
434 if (builtin.os.tag == .windows) {
435 // This test was never passing on Windows.
436 return error.SkipZigTest;
437 }
438
439 const test_server = try createTestServer(io, struct {427 const test_server = try createTestServer(io, struct {
440 fn run(test_server: *TestServer) anyerror!void {428 fn run(test_server: *TestServer) anyerror!void {
441 const net_server = &test_server.net_server;429 const net_server = &test_server.net_server;
...@@ -922,7 +910,6 @@ test "general client/server API coverage" {...@@ -922,7 +910,6 @@ test "general client/server API coverage" {
922}910}
923911
924test "Server streams both reading and writing" {912test "Server streams both reading and writing" {
925 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
926 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806913 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
927914
928 const io = std.testing.io;915 const io = std.testing.io;
...@@ -1162,10 +1149,6 @@ const TestServer = struct {...@@ -1162,10 +1149,6 @@ const TestServer = struct {
11621149
1163fn createTestServer(io: Io, S: type) !*TestServer {1150fn createTestServer(io: Io, S: type) !*TestServer {
1164 if (builtin.single_threaded) return error.SkipZigTest;1151 if (builtin.single_threaded) return error.SkipZigTest;
1165 if (builtin.zig_backend == .stage2_llvm and native_endian == .big) {
1166 // https://github.com/ziglang/zig/issues/13782
1167 return error.SkipZigTest;
1168 }
11691152
1170 const address = try net.IpAddress.parse("127.0.0.1", 0);1153 const address = try net.IpAddress.parse("127.0.0.1", 0);
11711154
...@@ -1192,7 +1175,6 @@ fn createTestServer(io: Io, S: type) !*TestServer {...@@ -1192,7 +1175,6 @@ fn createTestServer(io: Io, S: type) !*TestServer {
1192}1175}
11931176
1194test "redirect to different connection" {1177test "redirect to different connection" {
1195 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
1196 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/308061178 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
11971179
1198 const io = std.testing.io;1180 const io = std.testing.io;
...@@ -1280,7 +1262,6 @@ test "redirect to different connection" {...@@ -1280,7 +1262,6 @@ test "redirect to different connection" {
1280}1262}
12811263
1282test "boot failed connections from the pool" {1264test "boot failed connections from the pool" {
1283 if (builtin.cpu.arch.isPowerPC64() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194257
1284 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/308061265 if (builtin.os.tag == .openbsd) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30806
12851266
1286 const io = std.testing.io;1267 const io = std.testing.io;
lib/std/math.zig+1-1
...@@ -461,7 +461,7 @@ pub fn wrap(x: anytype, r: anytype) @TypeOf(x) {...@@ -461,7 +461,7 @@ pub fn wrap(x: anytype, r: anytype) @TypeOf(x) {
461 }461 }
462}462}
463test wrap {463test wrap {
464 if (builtin.os.tag == .windows and builtin.cpu.arch == .x86) {464 if (builtin.os.tag == .windows and builtin.cpu.arch == .x86 and builtin.abi == .msvc) {
465 // https://codeberg.org/ziglang/zig/issues/35520465 // https://codeberg.org/ziglang/zig/issues/35520
466 return error.SkipZigTest;466 return error.SkipZigTest;
467 }467 }
lib/std/math/acos.zig-4
...@@ -337,8 +337,6 @@ fn acosBinary128(x: f128) f128 {...@@ -337,8 +337,6 @@ fn acosBinary128(x: f128) f128 {
337}337}
338338
339test "acosBinary16.special" {339test "acosBinary16.special" {
340 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
341
342 try testing.expectApproxEqAbs(0x1.92p0, acosBinary16(0x0p+0), math.floatEpsAt(f16, 0x1.92p0));340 try testing.expectApproxEqAbs(0x1.92p0, acosBinary16(0x0p+0), math.floatEpsAt(f16, 0x1.92p0));
343 try testing.expectApproxEqAbs(0x1.92p1, acosBinary16(-0x1p+0), math.floatEpsAt(f16, 0x1.92p1));341 try testing.expectApproxEqAbs(0x1.92p1, acosBinary16(-0x1p+0), math.floatEpsAt(f16, 0x1.92p1));
344 try testing.expectEqual(0x0p+0, acosBinary16(0x1p+0));342 try testing.expectEqual(0x0p+0, acosBinary16(0x1p+0));
...@@ -350,8 +348,6 @@ test "acosBinary16.special" {...@@ -350,8 +348,6 @@ test "acosBinary16.special" {
350}348}
351349
352test "acosBinary16" {350test "acosBinary16" {
353 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
354
355 try testing.expectApproxEqAbs(0x1.834p0, acosBinary16(0x1.db4p-5), math.floatEpsAt(f16, 0x1.834p0));351 try testing.expectApproxEqAbs(0x1.834p0, acosBinary16(0x1.db4p-5), math.floatEpsAt(f16, 0x1.834p0));
356 try testing.expectApproxEqAbs(0x1.d48p0, acosBinary16(-0x1.068p-2), math.floatEpsAt(f16, 0x1.d48p0));352 try testing.expectApproxEqAbs(0x1.d48p0, acosBinary16(-0x1.068p-2), math.floatEpsAt(f16, 0x1.d48p0));
357 try testing.expectApproxEqAbs(0x1.b7cp0, acosBinary16(-0x1.2c4p-3), math.floatEpsAt(f16, 0x1.b7cp0));353 try testing.expectApproxEqAbs(0x1.b7cp0, acosBinary16(-0x1.2c4p-3), math.floatEpsAt(f16, 0x1.b7cp0));
lib/std/math/asin.zig-4
...@@ -326,8 +326,6 @@ fn asinBinary128(x: f128) f128 {...@@ -326,8 +326,6 @@ fn asinBinary128(x: f128) f128 {
326}326}
327327
328test "asinBinary16.special" {328test "asinBinary16.special" {
329 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
330
331 try testing.expectApproxEqAbs(0x1.92p0, asinBinary16(0x1p+0), math.floatEpsAt(f16, 0x1.92p0));329 try testing.expectApproxEqAbs(0x1.92p0, asinBinary16(0x1p+0), math.floatEpsAt(f16, 0x1.92p0));
332 try testing.expectApproxEqAbs(-0x1.92p0, asinBinary16(-0x1p+0), math.floatEpsAt(f16, -0x1.92p0));330 try testing.expectApproxEqAbs(-0x1.92p0, asinBinary16(-0x1p+0), math.floatEpsAt(f16, -0x1.92p0));
333 try testing.expectEqual(0x0p+0, asinBinary16(0x0p+0));331 try testing.expectEqual(0x0p+0, asinBinary16(0x0p+0));
...@@ -340,8 +338,6 @@ test "asinBinary16.special" {...@@ -340,8 +338,6 @@ test "asinBinary16.special" {
340}338}
341339
342test "asinBinary16" {340test "asinBinary16" {
343 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
344
345 try testing.expectApproxEqAbs(-0x1.e4cp-6, asinBinary16(-0x1.e4cp-6), math.floatEpsAt(f16, -0x1.e4cp-6));341 try testing.expectApproxEqAbs(-0x1.e4cp-6, asinBinary16(-0x1.e4cp-6), math.floatEpsAt(f16, -0x1.e4cp-6));
346 try testing.expectApproxEqAbs(0x1.2a8p0, asinBinary16(0x1.d68p-1), math.floatEpsAt(f16, 0x1.2a8p0));342 try testing.expectApproxEqAbs(0x1.2a8p0, asinBinary16(0x1.d68p-1), math.floatEpsAt(f16, 0x1.2a8p0));
347 try testing.expectApproxEqAbs(-0x1.eep-1, asinBinary16(-0x1.a4cp-1), math.floatEpsAt(f16, -0x1.eep-1));343 try testing.expectApproxEqAbs(-0x1.eep-1, asinBinary16(-0x1.a4cp-1), math.floatEpsAt(f16, -0x1.eep-1));
lib/std/math/atan.zig-4
...@@ -481,8 +481,6 @@ fn atanBinary128(x: f128) f128 {...@@ -481,8 +481,6 @@ fn atanBinary128(x: f128) f128 {
481}481}
482482
483test "atanBinary16.special" {483test "atanBinary16.special" {
484 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
485
486 try testing.expectEqual(0x0p+0, atanBinary16(0x0p+0));484 try testing.expectEqual(0x0p+0, atanBinary16(0x0p+0));
487 try testing.expectEqual(-0x0p+0, atanBinary16(-0x0p+0));485 try testing.expectEqual(-0x0p+0, atanBinary16(-0x0p+0));
488 try testing.expectApproxEqAbs(0x1.92p-1, atanBinary16(0x1p+0), math.floatEpsAt(f16, 0x1.92p-1));486 try testing.expectApproxEqAbs(0x1.92p-1, atanBinary16(0x1p+0), math.floatEpsAt(f16, 0x1.92p-1));
...@@ -493,8 +491,6 @@ test "atanBinary16.special" {...@@ -493,8 +491,6 @@ test "atanBinary16.special" {
493}491}
494492
495test "atanBinary16" {493test "atanBinary16" {
496 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
497
498 try testing.expectApproxEqAbs(-0x1.74cp-2, atanBinary16(-0x1.864p-2), math.floatEpsAt(f16, -0x1.74cp-2));494 try testing.expectApproxEqAbs(-0x1.74cp-2, atanBinary16(-0x1.864p-2), math.floatEpsAt(f16, -0x1.74cp-2));
499 try testing.expectApproxEqAbs(-0x1.374p0, atanBinary16(-0x1.59cp1), math.floatEpsAt(f16, -0x1.374p0));495 try testing.expectApproxEqAbs(-0x1.374p0, atanBinary16(-0x1.59cp1), math.floatEpsAt(f16, -0x1.374p0));
500 try testing.expectApproxEqAbs(-0x1.11cp0, atanBinary16(-0x1.d2cp0), math.floatEpsAt(f16, -0x1.11cp0));496 try testing.expectApproxEqAbs(-0x1.11cp0, atanBinary16(-0x1.d2cp0), math.floatEpsAt(f16, -0x1.11cp0));
lib/std/math/hypot.zig-9
...@@ -1,4 +1,3 @@...@@ -1,4 +1,3 @@
1const builtin = @import("builtin");
2const std = @import("../std.zig");1const std = @import("../std.zig");
3const math = std.math;2const math = std.math;
4const expect = std.testing.expect;3const expect = std.testing.expect;
...@@ -93,14 +92,10 @@ const hypot_test_cases = .{...@@ -93,14 +92,10 @@ const hypot_test_cases = .{
93};92};
9493
95test hypot {94test hypot {
96 if (builtin.cpu.arch.isPowerPC() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/171869
97 try expect(hypot(0.3, 0.4) == 0.5);95 try expect(hypot(0.3, 0.4) == 0.5);
98}96}
9997
100test "hypot.correct" {98test "hypot.correct" {
101 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
102 if (builtin.cpu.arch.isPowerPC() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/171869
103
104 inline for (.{ f16, f32, f64, f128 }) |T| {99 inline for (.{ f16, f32, f64, f128 }) |T| {
105 inline for (hypot_test_cases) |v| {100 inline for (hypot_test_cases) |v| {
106 const a: T, const b: T, const c: T = v;101 const a: T, const b: T, const c: T = v;
...@@ -110,9 +105,6 @@ test "hypot.correct" {...@@ -110,9 +105,6 @@ test "hypot.correct" {
110}105}
111106
112test "hypot.precise" {107test "hypot.precise" {
113 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
114 if (builtin.cpu.arch.isPowerPC() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/171869
115
116 inline for (.{ f16, f32, f64 }) |T| { // f128 seems to be 5 ulp108 inline for (.{ f16, f32, f64 }) |T| { // f128 seems to be 5 ulp
117 inline for (hypot_test_cases) |v| {109 inline for (hypot_test_cases) |v| {
118 const a: T, const b: T, const c: T = v;110 const a: T, const b: T, const c: T = v;
...@@ -122,7 +114,6 @@ test "hypot.precise" {...@@ -122,7 +114,6 @@ test "hypot.precise" {
122}114}
123115
124test "hypot.special" {116test "hypot.special" {
125 if (builtin.cpu.arch.isPowerPC() and builtin.mode != .debug) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/171869
126 @setEvalBranchQuota(2000);117 @setEvalBranchQuota(2000);
127 inline for (.{ f16, f32, f64, f128 }) |T| {118 inline for (.{ f16, f32, f64, f128 }) |T| {
128 try expect(math.isNan(hypot(nan(T), 0.0)));119 try expect(math.isNan(hypot(nan(T), 0.0)));
lib/std/math/isnan.zig+1-7
...@@ -27,13 +27,6 @@ test isNan {...@@ -27,13 +27,6 @@ test isNan {
27}27}
2828
29test isSignalNan {29test isSignalNan {
30 if (builtin.zig_backend == .stage2_x86_64 and builtin.object_format == .coff and builtin.abi != .gnu) return error.SkipZigTest;
31
32 if (builtin.os.tag == .windows) {
33 // https://codeberg.org/ziglang/zig/issues/35519
34 return error.SkipZigTest;
35 }
36
37 inline for ([_]type{ f16, f32, f64, f80, f128, c_longdouble }) |T| {30 inline for ([_]type{ f16, f32, f64, f80, f128, c_longdouble }) |T| {
38 // TODO: Signalling NaN values get converted to quiet NaN values in31 // TODO: Signalling NaN values get converted to quiet NaN values in
39 // some cases where they shouldn't such that this can fail.32 // some cases where they shouldn't such that this can fail.
...@@ -43,6 +36,7 @@ test isSignalNan {...@@ -43,6 +36,7 @@ test isSignalNan {
43 builtin.cpu.arch != .hexagon and36 builtin.cpu.arch != .hexagon and
44 !builtin.cpu.arch.isMIPS32() and37 !builtin.cpu.arch.isMIPS32() and
45 !builtin.cpu.arch.isPowerPC() and38 !builtin.cpu.arch.isPowerPC() and
39 !(builtin.cpu.arch.isX86() and builtin.os.tag == .windows and builtin.abi == .msvc) and // https://codeberg.org/ziglang/zig/issues/35519
46 builtin.zig_backend != .stage2_c)40 builtin.zig_backend != .stage2_c)
47 {41 {
48 try expect(isSignalNan(math.snan(T)));42 try expect(isSignalNan(math.snan(T)));
lib/std/math/modf.zig-4
...@@ -1,5 +1,4 @@...@@ -1,5 +1,4 @@
1const std = @import("../std.zig");1const std = @import("../std.zig");
2const builtin = @import("builtin");
3const math = std.math;2const math = std.math;
4const expect = std.testing.expect;3const expect = std.testing.expect;
5const expectEqual = std.testing.expectEqual;4const expectEqual = std.testing.expectEqual;
...@@ -85,9 +84,6 @@ fn ModfTests(comptime T: type) type {...@@ -85,9 +84,6 @@ fn ModfTests(comptime T: type) type {
85 try expectApproxEqAbs(expected_c, r.fpart, epsilon);84 try expectApproxEqAbs(expected_c, r.fpart, epsilon);
86 }85 }
87 test "vector" {86 test "vector" {
88 if (builtin.os.tag.isDarwin() and builtin.cpu.arch == .aarch64) return error.SkipZigTest;
89 if (builtin.cpu.arch == .s390x) return error.SkipZigTest; // https://github.com/llvm/llvm-project/issues/194256
90
91 const widths = [_]comptime_int{ 1, 2, 3, 4, 8, 16 };87 const widths = [_]comptime_int{ 1, 2, 3, 4, 8, 16 };
9288
93 inline for (widths) |len| {89 inline for (widths) |len| {
lib/std/os/linux/IoUring/test.zig-7
...@@ -1836,8 +1836,6 @@ test "accept/connect/send_zc/recv" {...@@ -1836,8 +1836,6 @@ test "accept/connect/send_zc/recv" {
1836}1836}
18371837
1838test "accept_direct" {1838test "accept_direct" {
1839 if (builtin.cpu.arch.isRISCV()) return error.SkipZigTest; // https://codeberg.org/ziglang/zig/issues/30854
1840
1841 try skipKernelLessThan(.{ .major = 5, .minor = 19, .patch = 0 });1839 try skipKernelLessThan(.{ .major = 5, .minor = 19, .patch = 0 });
18421840
1843 var ring = IoUring.init(1, 0) catch |err| switch (err) {1841 var ring = IoUring.init(1, 0) catch |err| switch (err) {
...@@ -1925,11 +1923,6 @@ test "accept_direct" {...@@ -1925,11 +1923,6 @@ test "accept_direct" {
1925test "accept_multishot_direct" {1923test "accept_multishot_direct" {
1926 try skipKernelLessThan(.{ .major = 5, .minor = 19, .patch = 0 });1924 try skipKernelLessThan(.{ .major = 5, .minor = 19, .patch = 0 });
19271925
1928 if (builtin.cpu.arch == .riscv64) {
1929 // https://github.com/ziglang/zig/issues/25734
1930 return error.SkipZigTest;
1931 }
1932
1933 var ring = IoUring.init(1, 0) catch |err| switch (err) {1926 var ring = IoUring.init(1, 0) catch |err| switch (err) {
1934 error.SystemOutdated => return error.SkipZigTest,1927 error.SystemOutdated => return error.SkipZigTest,
1935 error.PermissionDenied => return error.SkipZigTest,1928 error.PermissionDenied => return error.SkipZigTest,
test/behavior/align.zig-1
...@@ -569,7 +569,6 @@ test "sub-aligned pointer field access" {...@@ -569,7 +569,6 @@ test "sub-aligned pointer field access" {
569}569}
570570
571test "alignment of zero-bit types is respected" {571test "alignment of zero-bit types is respected" {
572 if (builtin.zig_backend == .stage2_llvm) return error.SkipZigTest;
573 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;572 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
574 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; // TODO573 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; // TODO
575574
test/behavior/basic.zig-1
...@@ -1397,7 +1397,6 @@ test "allocation and looping over 3-byte integer" {...@@ -1397,7 +1397,6 @@ test "allocation and looping over 3-byte integer" {
1397 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO1397 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
1398 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;1398 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
1399 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;1399 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
1400 if (builtin.zig_backend == .stage2_llvm and builtin.os.tag.isDarwin()) return error.SkipZigTest; // TODO
14011400
1402 try expect(@sizeOf(u24) == 4);1401 try expect(@sizeOf(u24) == 4);
1403 try expect(@sizeOf([1]u24) == 4);1402 try expect(@sizeOf([1]u24) == 4);
test/behavior/cast.zig-6
...@@ -1719,7 +1719,6 @@ test "cast f16 to wider types" {...@@ -1719,7 +1719,6 @@ test "cast f16 to wider types" {
1719 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO1719 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
1720 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;1720 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
1721 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;1721 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
1722 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
17231722
1724 const S = struct {1723 const S = struct {
1725 fn doTheTest() !void {1724 fn doTheTest() !void {
...@@ -1828,11 +1827,6 @@ test "coerce between pointers of compatible differently-named floats" {...@@ -1828,11 +1827,6 @@ test "coerce between pointers of compatible differently-named floats" {
1828 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;1827 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
1829 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;1828 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
18301829
1831 if (builtin.zig_backend == .stage2_llvm and builtin.os.tag == .windows) {
1832 // https://github.com/ziglang/zig/issues/12396
1833 return error.SkipZigTest;
1834 }
1835
1836 const F = switch (@typeInfo(c_longdouble).float.bits) {1830 const F = switch (@typeInfo(c_longdouble).float.bits) {
1837 64 => f64,1831 64 => f64,
1838 80 => f80,1832 80 => f80,
test/behavior/field_parent_ptr.zig-1
...@@ -1895,7 +1895,6 @@ test "@fieldParentPtr packed union" {...@@ -1895,7 +1895,6 @@ test "@fieldParentPtr packed union" {
1895}1895}
18961896
1897test "@fieldParentPtr tagged union all zero-bit fields" {1897test "@fieldParentPtr tagged union all zero-bit fields" {
1898 if (builtin.zig_backend == .stage2_llvm) return error.SkipZigTest;
1899 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;1898 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
1900 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;1899 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
19011900
test/behavior/floatop.zig+1-12
...@@ -216,7 +216,6 @@ test "vector cmp f16" {...@@ -216,7 +216,6 @@ test "vector cmp f16" {
216 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;216 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
217 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO217 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
218 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;218 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
219 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch.isArm()) return error.SkipZigTest;
220 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .hexagon) return error.SkipZigTest;219 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .hexagon) return error.SkipZigTest;
221220
222 try testCmpVector(f16);221 try testCmpVector(f16);
...@@ -378,11 +377,6 @@ test "@sqrt f80/f128/c_longdouble" {...@@ -378,11 +377,6 @@ test "@sqrt f80/f128/c_longdouble" {
378 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;377 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
379 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;378 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
380379
381 if (builtin.os.tag == .freebsd) {
382 // TODO https://github.com/ziglang/zig/issues/10875
383 return error.SkipZigTest;
384 }
385
386 try testSqrt(f80);380 try testSqrt(f80);
387 try comptime testSqrt(f80);381 try comptime testSqrt(f80);
388 try testSqrt(f128);382 try testSqrt(f128);
...@@ -943,7 +937,7 @@ test "@log2 with vectors" {...@@ -943,7 +937,7 @@ test "@log2 with vectors" {
943 builtin.cpu.arch == .aarch64 and937 builtin.cpu.arch == .aarch64 and
944 builtin.os.tag == .windows) return error.SkipZigTest;938 builtin.os.tag == .windows) return error.SkipZigTest;
945939
946 if (builtin.os.tag == .windows and builtin.cpu.arch == .x86) {940 if (builtin.os.tag == .windows and builtin.cpu.arch == .x86 and builtin.abi == .msvc) {
947 // https://codeberg.org/ziglang/zig/issues/35518941 // https://codeberg.org/ziglang/zig/issues/35518
948 return error.SkipZigTest;942 return error.SkipZigTest;
949 }943 }
...@@ -1411,11 +1405,6 @@ test "neg f16" {...@@ -1411,11 +1405,6 @@ test "neg f16" {
1411 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO1405 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
1412 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;1406 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
14131407
1414 if (builtin.os.tag == .freebsd) {
1415 // TODO file issue to track this failure
1416 return error.SkipZigTest;
1417 }
1418
1419 try testNeg(f16);1408 try testNeg(f16);
1420 try comptime testNeg(f16);1409 try comptime testNeg(f16);
1421}1410}
test/behavior/threadlocal.zig-5
...@@ -9,11 +9,6 @@ test "thread local variable" {...@@ -9,11 +9,6 @@ test "thread local variable" {
9 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;9 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
10 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; // TODO10 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; // TODO
1111
12 if (builtin.zig_backend == .stage2_x86_64 and builtin.os.tag.isDarwin()) {
13 // Fails due to register hazards.
14 return error.SkipZigTest;
15 }
16
17 const S = struct {12 const S = struct {
18 threadlocal var t: i32 = 1234;13 threadlocal var t: i32 = 1234;
19 };14 };
test/behavior/union.zig+4-2
...@@ -1609,6 +1609,10 @@ fn littleToNativeEndian(comptime T: type, v: T) T {...@@ -1609,6 +1609,10 @@ fn littleToNativeEndian(comptime T: type, v: T) T {
1609}1609}
16101610
1611test "reinterpret extern union" {1611test "reinterpret extern union" {
1612 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .hexagon) return error.SkipZigTest;
1613 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch.isRiscv32() and builtin.link_libc) return error.SkipZigTest;
1614 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch.isWasm()) return error.SkipZigTest;
1615
1612 if (true) {1616 if (true) {
1613 // https://github.com/ziglang/zig/issues/193891617 // https://github.com/ziglang/zig/issues/19389
1614 return error.SkipZigTest;1618 return error.SkipZigTest;
...@@ -1676,8 +1680,6 @@ test "reinterpret extern union" {...@@ -1676,8 +1680,6 @@ test "reinterpret extern union" {
1676 };1680 };
16771681
1678 try comptime S.doTheTest();1682 try comptime S.doTheTest();
1679
1680 if (builtin.zig_backend == .stage2_llvm) return error.SkipZigTest; // TODO
1681 try S.doTheTest();1683 try S.doTheTest();
1682}1684}
16831685
test/behavior/vector.zig-7
...@@ -129,12 +129,6 @@ test "vector float operators" {...@@ -129,12 +129,6 @@ test "vector float operators" {
129 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO129 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
130 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;130 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
131131
132 if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) {
133 // Triggers an assertion with LLVM 18:
134 // https://github.com/ziglang/zig/issues/20680
135 return error.SkipZigTest;
136 }
137
138 const S = struct {132 const S = struct {
139 fn doTheTest(T: type) !void {133 fn doTheTest(T: type) !void {
140 var v: @Vector(4, T) = .{ 10, 20, 30, 40 };134 var v: @Vector(4, T) = .{ 10, 20, 30, 40 };
...@@ -279,7 +273,6 @@ test "array to vector with element type coercion" {...@@ -279,7 +273,6 @@ test "array to vector with element type coercion" {
279 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO273 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
280 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;274 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
281 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;275 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
282 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
283276
284 const S = struct {277 const S = struct {
285 fn doTheTest() !void {278 fn doTheTest() !void {
test/behavior/widening.zig-1
...@@ -41,7 +41,6 @@ test "float widening" {...@@ -41,7 +41,6 @@ test "float widening" {
41 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO41 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
42 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;42 if (builtin.zig_backend == .stage2_spirv) return error.SkipZigTest;
43 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;43 if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
44 if (builtin.target.cpu.arch == .x86_64 and builtin.target.os.tag == .macos) return error.SkipZigTest;
4544
46 var a: f16 = 12.34;45 var a: f16 = 12.34;
47 var b: f32 = a;46 var b: f32 = a;