From 9fbba0e01a5e89ce4b4be940539b6b05a7fb3931 Mon Sep 17 00:00:00 2001 From: Robin Voetter Date: Sat, 13 Jan 2024 18:44:44 +0100 Subject: [PATCH] spirv: update tests --- test/behavior/align.zig | 7 +++---- test/behavior/array.zig | 2 -- test/behavior/basic.zig | 1 + .../builtin_functions_returning_void_or_noreturn.zig | 1 + test/behavior/cast.zig | 7 +------ test/behavior/destructure.zig | 1 + test/behavior/duplicated_test_names.zig | 2 ++ test/behavior/eval.zig | 1 - test/behavior/export_builtin.zig | 3 --- test/behavior/export_keyword.zig | 1 + test/behavior/extern.zig | 2 ++ test/behavior/for.zig | 1 + test/behavior/globals.zig | 2 -- test/behavior/hasdecl.zig | 5 +++++ test/behavior/import.zig | 9 +++++++++ test/behavior/int_div.zig | 2 ++ test/behavior/math.zig | 3 --- test/behavior/namespace_depends_on_compile_var.zig | 2 ++ test/behavior/optional.zig | 1 + test/behavior/pub_enum.zig | 4 ++++ test/behavior/slice_sentinel_comptime.zig | 2 ++ test/behavior/struct.zig | 4 ++-- test/behavior/switch_on_captured_error.zig | 4 ++++ test/behavior/tuple.zig | 1 - test/behavior/union.zig | 3 ++- test/behavior/vector.zig | 1 - test/behavior/wrapping_arithmetic.zig | 6 ++++++ 27 files changed, 52 insertions(+), 26 deletions(-) diff --git a/test/behavior/align.zig b/test/behavior/align.zig index 03109b1e8d..e00fbe6744 100644 --- a/test/behavior/align.zig +++ b/test/behavior/align.zig @@ -18,7 +18,6 @@ test "global variable alignment" { test "large alignment of local constant" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // flaky const x: f32 align(128) = 12.34; try std.testing.expect(@intFromPtr(&x) % 128 == 0); @@ -27,7 +26,7 @@ test "large alignment of local constant" { test "slicing array of length 1 can not assume runtime index is always zero" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // flaky var runtime_index: usize = 1; _ = &runtime_index; @@ -512,7 +511,7 @@ test "struct field explicit alignment" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // flaky const S = struct { const Node = struct { @@ -581,7 +580,7 @@ test "comptime alloc alignment" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // flaky if (builtin.zig_backend == .stage2_llvm and builtin.target.cpu.arch == .x86) { // https://github.com/ziglang/zig/issues/18034 return error.SkipZigTest; diff --git a/test/behavior/array.zig b/test/behavior/array.zig index 75141c6bd1..5e3a9fb52f 100644 --- a/test/behavior/array.zig +++ b/test/behavior/array.zig @@ -768,8 +768,6 @@ test "array init with no result pointer sets field result types" { } test "runtime side-effects in comptime-known array init" { - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; - var side_effects: u4 = 0; const init = [4]u4{ blk: { diff --git a/test/behavior/basic.zig b/test/behavior/basic.zig index 42792f4aca..9747206a76 100644 --- a/test/behavior/basic.zig +++ b/test/behavior/basic.zig @@ -1222,6 +1222,7 @@ test "integer compare" { test "reference to inferred local variable works as expected" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const Crasher = struct { lets_crash: u64 = 0, diff --git a/test/behavior/builtin_functions_returning_void_or_noreturn.zig b/test/behavior/builtin_functions_returning_void_or_noreturn.zig index 1eb2ef3049..48cf0bc5c6 100644 --- a/test/behavior/builtin_functions_returning_void_or_noreturn.zig +++ b/test/behavior/builtin_functions_returning_void_or_noreturn.zig @@ -11,6 +11,7 @@ test { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; var val: u8 = undefined; try testing.expectEqual({}, @atomicStore(u8, &val, 0, .Unordered)); diff --git a/test/behavior/cast.zig b/test/behavior/cast.zig index c59a9803c0..d691949bae 100644 --- a/test/behavior/cast.zig +++ b/test/behavior/cast.zig @@ -759,6 +759,7 @@ test "peer type resolution: error union and error set" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const a: error{Three} = undefined; const b: error{ One, Two }!u32 = undefined; @@ -1730,7 +1731,6 @@ test "peer type resolution: array with smaller child type and vector with larger if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; // TODO var arr: [2]u8 = .{ 0, 1 }; var vec: @Vector(2, u64) = .{ 2, 3 }; @@ -2318,7 +2318,6 @@ test "@floatCast on vector" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf) return error.SkipZigTest; const S = struct { @@ -2339,7 +2338,6 @@ test "@ptrFromInt on vector" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn doTheTest() !void { @@ -2363,7 +2361,6 @@ test "@intFromPtr on vector" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn doTheTest() !void { @@ -2387,7 +2384,6 @@ test "@floatFromInt on vector" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf) return error.SkipZigTest; const S = struct { @@ -2408,7 +2404,6 @@ test "@intFromFloat on vector" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn doTheTest() !void { diff --git a/test/behavior/destructure.zig b/test/behavior/destructure.zig index c2a5ca329a..1c249ed8d5 100644 --- a/test/behavior/destructure.zig +++ b/test/behavior/destructure.zig @@ -1,4 +1,5 @@ const std = @import("std"); +const builtin = @import("builtin"); const assert = std.debug.assert; const expect = std.testing.expect; diff --git a/test/behavior/duplicated_test_names.zig b/test/behavior/duplicated_test_names.zig index 52930ea318..81b9ebdf50 100644 --- a/test/behavior/duplicated_test_names.zig +++ b/test/behavior/duplicated_test_names.zig @@ -15,5 +15,7 @@ comptime { test "thingy" {} test thingy { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + if (thingy(1, 2) != 3) unreachable; } diff --git a/test/behavior/eval.zig b/test/behavior/eval.zig index 078fae519a..5fdfacf2db 100644 --- a/test/behavior/eval.zig +++ b/test/behavior/eval.zig @@ -489,7 +489,6 @@ test "comptime bitwise operators" { test "comptime shlWithOverflow" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const ct_shifted = @shlWithOverflow(~@as(u64, 0), 16)[0]; var a = ~@as(u64, 0); diff --git a/test/behavior/export_builtin.zig b/test/behavior/export_builtin.zig index e3ea1f7e0b..6755a127f5 100644 --- a/test/behavior/export_builtin.zig +++ b/test/behavior/export_builtin.zig @@ -6,7 +6,6 @@ test "exporting enum type and value" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { const E = enum(c_int) { one, two }; @@ -22,7 +21,6 @@ test "exporting with internal linkage" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn foo() callconv(.C) void {} @@ -37,7 +35,6 @@ test "exporting using field access" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { const Inner = struct { diff --git a/test/behavior/export_keyword.zig b/test/behavior/export_keyword.zig index 34228c8e7f..a6baf6d1a5 100644 --- a/test/behavior/export_keyword.zig +++ b/test/behavior/export_keyword.zig @@ -23,6 +23,7 @@ const PackedUnion = packed union { test "packed struct, enum, union parameters in extern function" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; testPackedStuff(&(PackedStruct{ .a = 1, diff --git a/test/behavior/extern.zig b/test/behavior/extern.zig index af9c86e3be..65bc517210 100644 --- a/test/behavior/extern.zig +++ b/test/behavior/extern.zig @@ -5,6 +5,7 @@ const expect = std.testing.expect; test "anyopaque extern symbol" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const a = @extern(*anyopaque, .{ .name = "a_mystery_symbol" }); const b: *i32 = @alignCast(@ptrCast(a)); @@ -17,6 +18,7 @@ test "function extern symbol" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const a = @extern(*const fn () callconv(.C) i32, .{ .name = "a_mystery_function" }); try expect(a() == 4567); diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 53e21f5ce5..4fd0b57750 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -456,6 +456,7 @@ test "inline for on tuple pointer" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { u32, u32, u32 }; var s: S = .{ 100, 200, 300 }; diff --git a/test/behavior/globals.zig b/test/behavior/globals.zig index 25968ba424..bf46512183 100644 --- a/test/behavior/globals.zig +++ b/test/behavior/globals.zig @@ -8,7 +8,6 @@ test "store to global array" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; try expect(pos[1] == 0.0); pos = [2]f32{ 0.0, 1.0 }; @@ -21,7 +20,6 @@ test "store to global vector" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; try expect(vpos[1] == 0.0); vpos = @Vector(2, f32){ 0.0, 1.0 }; diff --git a/test/behavior/hasdecl.zig b/test/behavior/hasdecl.zig index e297979ba2..4ab521ceef 100644 --- a/test/behavior/hasdecl.zig +++ b/test/behavior/hasdecl.zig @@ -1,4 +1,5 @@ const std = @import("std"); +const builtin = @import("builtin"); const expect = std.testing.expect; const Foo = @import("hasdecl/foo.zig"); @@ -11,6 +12,8 @@ const Bar = struct { }; test "@hasDecl" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try expect(@hasDecl(Foo, "public_thing")); try expect(!@hasDecl(Foo, "private_thing")); try expect(!@hasDecl(Foo, "no_thing")); @@ -21,6 +24,8 @@ test "@hasDecl" { } test "@hasDecl using a sliced string literal" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try expect(@hasDecl(@This(), "std") == true); try expect(@hasDecl(@This(), "std"[0..0]) == false); try expect(@hasDecl(@This(), "std"[0..1]) == false); diff --git a/test/behavior/import.zig b/test/behavior/import.zig index c36aea7d2a..c2bb39983d 100644 --- a/test/behavior/import.zig +++ b/test/behavior/import.zig @@ -1,17 +1,24 @@ const std = @import("std"); +const builtin = @import("builtin"); const expect = std.testing.expect; const expectEqual = std.testing.expectEqual; const a_namespace = @import("import/a_namespace.zig"); test "call fn via namespace lookup" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try expect(@as(i32, 1234) == a_namespace.foo()); } test "importing the same thing gives the same import" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try expect(@import("std") == @import("std")); } test "import in non-toplevel scope" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + const S = struct { usingnamespace @import("import/a_namespace.zig"); }; @@ -19,5 +26,7 @@ test "import in non-toplevel scope" { } test "import empty file" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + _ = @import("import/empty.zig"); } diff --git a/test/behavior/int_div.zig b/test/behavior/int_div.zig index bc570434ce..19329f1176 100644 --- a/test/behavior/int_div.zig +++ b/test/behavior/int_div.zig @@ -6,6 +6,7 @@ test "integer division" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; try testDivision(); try comptime testDivision(); @@ -96,6 +97,7 @@ test "large integer division" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; { var numerator: u256 = 99999999999999999997315645440; diff --git a/test/behavior/math.zig b/test/behavior/math.zig index dc4d5f894a..e637bc8ac1 100644 --- a/test/behavior/math.zig +++ b/test/behavior/math.zig @@ -602,7 +602,6 @@ fn testUnsignedNegationWrappingEval(x: u16) !void { test "negation wrapping" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; try expectEqual(@as(u1, 1), negateWrap(u1, 1)); } @@ -770,7 +769,6 @@ test "@addWithOverflow" { test "small int addition" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; var x: u2 = 0; try expect(x == 0); @@ -1564,7 +1562,6 @@ test "vector integer addition" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn doTheTest() !void { diff --git a/test/behavior/namespace_depends_on_compile_var.zig b/test/behavior/namespace_depends_on_compile_var.zig index 84b7e21d38..a115f557ab 100644 --- a/test/behavior/namespace_depends_on_compile_var.zig +++ b/test/behavior/namespace_depends_on_compile_var.zig @@ -3,6 +3,8 @@ const builtin = @import("builtin"); const expect = std.testing.expect; test "namespace depends on compile var" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + if (some_namespace.a_bool) { try expect(some_namespace.a_bool); } else { diff --git a/test/behavior/optional.zig b/test/behavior/optional.zig index 3da78aea0a..32ba8ff8d3 100644 --- a/test/behavior/optional.zig +++ b/test/behavior/optional.zig @@ -451,6 +451,7 @@ test "Optional slice passed to function" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn foo(a: ?[]const u8) !void { diff --git a/test/behavior/pub_enum.zig b/test/behavior/pub_enum.zig index e17546157d..c0935b78be 100644 --- a/test/behavior/pub_enum.zig +++ b/test/behavior/pub_enum.zig @@ -3,6 +3,8 @@ const other = @import("pub_enum/other.zig"); const expect = @import("std").testing.expect; test "pub enum" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try pubEnumTest(other.APubEnum.Two); } fn pubEnumTest(foo: other.APubEnum) !void { @@ -10,5 +12,7 @@ fn pubEnumTest(foo: other.APubEnum) !void { } test "cast with imported symbol" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + try expect(@as(other.size_t, 42) == 42); } diff --git a/test/behavior/slice_sentinel_comptime.zig b/test/behavior/slice_sentinel_comptime.zig index 31b7e2349e..51cf7d428b 100644 --- a/test/behavior/slice_sentinel_comptime.zig +++ b/test/behavior/slice_sentinel_comptime.zig @@ -1,3 +1,5 @@ +const builtin = @import("builtin"); + test "comptime slice-sentinel in bounds (unterminated)" { // array comptime { diff --git a/test/behavior/struct.zig b/test/behavior/struct.zig index c74d6344dd..37d201288a 100644 --- a/test/behavior/struct.zig +++ b/test/behavior/struct.zig @@ -1744,8 +1744,6 @@ test "struct init with no result pointer sets field result types" { } test "runtime side-effects in comptime-known struct init" { - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; - var side_effects: u4 = 0; const S = struct { a: u4, b: u4, c: u4, d: u4 }; const init = S{ @@ -2056,6 +2054,8 @@ test "struct field default value is a call" { } test "aggregate initializers should allow initializing comptime fields, verifying equality" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + var x: u32 = 15; _ = &x; const T = @TypeOf(.{ @as(i32, -1234), @as(u32, 5678), x }); diff --git a/test/behavior/switch_on_captured_error.zig b/test/behavior/switch_on_captured_error.zig index b6b422ba93..f5ba762559 100644 --- a/test/behavior/switch_on_captured_error.zig +++ b/test/behavior/switch_on_captured_error.zig @@ -5,6 +5,8 @@ const expectError = std.testing.expectError; const expectEqual = std.testing.expectEqual; test "switch on error union catch capture" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + const S = struct { const Error = error{ A, B, C }; fn doTheTest() !void { @@ -257,6 +259,8 @@ test "switch on error union catch capture" { } test "switch on error union if else capture" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + const S = struct { const Error = error{ A, B, C }; fn doTheTest() !void { diff --git a/test/behavior/tuple.zig b/test/behavior/tuple.zig index dd0f7f1007..0e382b3a9d 100644 --- a/test/behavior/tuple.zig +++ b/test/behavior/tuple.zig @@ -483,7 +483,6 @@ test "empty tuple type" { test "tuple with comptime fields with non empty initializer" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const a: struct { comptime comptime_int = 0 } = .{0}; _ = a; diff --git a/test/behavior/union.zig b/test/behavior/union.zig index bff21c1b6f..fa050d36be 100644 --- a/test/behavior/union.zig +++ b/test/behavior/union.zig @@ -1119,6 +1119,7 @@ test "@unionInit on union with tag but no fields" { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { const Type = enum(u8) { no_op = 105 }; @@ -2059,7 +2060,6 @@ test "store of comptime reinterpreted memory to packed union" { test "union field is a pointer to an aligned version of itself" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const E = union { next: *align(1) @This(), @@ -2181,6 +2181,7 @@ test "create union(enum) from other union(enum)" { if (builtin.zig_backend == .stage2_x86) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const string = "hello world"; const TempRef = struct { diff --git a/test/behavior/vector.zig b/test/behavior/vector.zig index 9aedac66e5..07a695d61d 100644 --- a/test/behavior/vector.zig +++ b/test/behavior/vector.zig @@ -1060,7 +1060,6 @@ test "@addWithOverflow" { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO - // if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; const S = struct { fn doTheTest() !void { diff --git a/test/behavior/wrapping_arithmetic.zig b/test/behavior/wrapping_arithmetic.zig index 23ebcfaf61..2733edad71 100644 --- a/test/behavior/wrapping_arithmetic.zig +++ b/test/behavior/wrapping_arithmetic.zig @@ -5,6 +5,8 @@ const maxInt = std.math.maxInt; const expect = std.testing.expect; test "wrapping add" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + const S = struct { fn doTheTest() !void { try testWrapAdd(i8, -3, 10, 7); @@ -40,6 +42,8 @@ test "wrapping add" { } test "wrapping subtraction" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + const S = struct { fn doTheTest() !void { try testWrapSub(i8, -3, 10, -13); @@ -73,6 +77,8 @@ test "wrapping subtraction" { } test "wrapping multiplication" { + if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; + // TODO: once #9660 has been solved, remove this line if (builtin.cpu.arch == .wasm32) return error.SkipZigTest;