From 5ca1753ff175379c7847ae82243774c79a75879c Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Tue, 27 Dec 2022 20:47:51 -0700 Subject: [PATCH] Revert "aarch64: reenable tests that are no longer regressed" This reverts commit 3370d58956ecc744a004dff47b0437473f0ef7da. This commit was done with an LLVM build that did not have assertions enabled. There are LLVM assertions being triggered due to this commit. Reopens #10627 Reopens #12013 Reopens #12027 --- lib/std/fmt/parse_float.zig | 5 +++++ lib/std/math.zig | 16 ++++++++++++++++ lib/std/simd.zig | 4 ++++ test/behavior/atomics.zig | 11 +++++++++++ test/behavior/math.zig | 6 ++++++ test/behavior/vector.zig | 6 ++++++ 6 files changed, 48 insertions(+) diff --git a/lib/std/fmt/parse_float.zig b/lib/std/fmt/parse_float.zig index b84b222721564f74dd6b17b9fd998887a80be2c7..427ac727c9fb3e5801e002903c313ee63a309e9a 100644 --- a/lib/std/fmt/parse_float.zig +++ b/lib/std/fmt/parse_float.zig @@ -70,6 +70,11 @@ test "fmt.parseFloat" { } test "fmt.parseFloat nan and inf" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12027 + return error.SkipZigTest; + } + inline for ([_]type{ f16, f32, f64, f128 }) |T| { const Z = std.meta.Int(.unsigned, @typeInfo(T).Float.bits); diff --git a/lib/std/math.zig b/lib/std/math.zig index d27e4761942c9418d6d131faa5d3f6052500e660..00f86fab1b3fd89406f579fcaca2d6722bf208a2 100644 --- a/lib/std/math.zig +++ b/lib/std/math.zig @@ -530,6 +530,10 @@ pub fn shl(comptime T: type, a: T, shift_amt: anytype) T { } test "shl" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } try testing.expect(shl(u8, 0b11111111, @as(usize, 3)) == 0b11111000); try testing.expect(shl(u8, 0b11111111, @as(usize, 8)) == 0); try testing.expect(shl(u8, 0b11111111, @as(usize, 9)) == 0); @@ -570,6 +574,10 @@ pub fn shr(comptime T: type, a: T, shift_amt: anytype) T { } test "shr" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } try testing.expect(shr(u8, 0b11111111, @as(usize, 3)) == 0b00011111); try testing.expect(shr(u8, 0b11111111, @as(usize, 8)) == 0); try testing.expect(shr(u8, 0b11111111, @as(usize, 9)) == 0); @@ -611,6 +619,10 @@ pub fn rotr(comptime T: type, x: T, r: anytype) T { } test "rotr" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } try testing.expect(rotr(u0, 0b0, @as(usize, 3)) == 0b0); try testing.expect(rotr(u5, 0b00001, @as(usize, 0)) == 0b00001); try testing.expect(rotr(u6, 0b000001, @as(usize, 7)) == 0b100000); @@ -651,6 +663,10 @@ pub fn rotl(comptime T: type, x: T, r: anytype) T { } test "rotl" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } try testing.expect(rotl(u0, 0b0, @as(usize, 3)) == 0b0); try testing.expect(rotl(u5, 0b00001, @as(usize, 0)) == 0b00001); try testing.expect(rotl(u6, 0b000001, @as(usize, 7)) == 0b000010); diff --git a/lib/std/simd.zig b/lib/std/simd.zig index 2179cb496e26a808a19889b7d72cda0b24066323..95de3cc11cabcce120fe0092c1f8438921fa666e 100644 --- a/lib/std/simd.zig +++ b/lib/std/simd.zig @@ -191,6 +191,10 @@ pub fn extract( } test "vector patterns" { + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } const base = @Vector(4, u32){ 10, 20, 30, 40 }; const other_base = @Vector(4, u32){ 55, 66, 77, 88 }; diff --git a/test/behavior/atomics.zig b/test/behavior/atomics.zig index ff15aa8dc02196c3b1baba5c3f265747afe0723f..094be62bc7142ff80d90ba28b8bb88c3262a8892 100644 --- a/test/behavior/atomics.zig +++ b/test/behavior/atomics.zig @@ -151,6 +151,11 @@ test "cmpxchg on a global variable" { 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_llvm and builtin.cpu.arch == .aarch64) { + // https://github.com/ziglang/zig/issues/10627 + return error.SkipZigTest; + } + _ = @cmpxchgWeak(u32, &a_global_variable, 1234, 42, .Acquire, .Monotonic); try expect(a_global_variable == 42); } @@ -213,6 +218,12 @@ test "atomicrmw with floats" { 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_llvm or builtin.zig_backend == .stage2_c) and + builtin.cpu.arch == .aarch64) + { + // https://github.com/ziglang/zig/issues/10627 + return error.SkipZigTest; + } try testAtomicRmwFloat(); comptime try testAtomicRmwFloat(); } diff --git a/test/behavior/math.zig b/test/behavior/math.zig index db032b1983b53fc4cba305bf46a6abbe034fe537..d6955b05927ce5e86bd5ee363820107d80350c19 100644 --- a/test/behavior/math.zig +++ b/test/behavior/math.zig @@ -166,6 +166,12 @@ test "@ctz vectors" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // This regressed with LLVM 14: + // https://github.com/ziglang/zig/issues/12013 + return error.SkipZigTest; + } + try testCtzVectors(); comptime try testCtzVectors(); } diff --git a/test/behavior/vector.zig b/test/behavior/vector.zig index cf23430f4fed2b6463cab1b60dbf6db2bc673361..ba3d98ee567b595fee29d887d5cac3d41bac36a9 100644 --- a/test/behavior/vector.zig +++ b/test/behavior/vector.zig @@ -181,6 +181,12 @@ test "tuple to vector" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_llvm and builtin.cpu.arch == .aarch64) { + // Regressed with LLVM 14: + // https://github.com/ziglang/zig/issues/12012 + return error.SkipZigTest; + } + const S = struct { fn doTheTest() !void { const Vec3 = @Vector(3, i32); -- 2.54.0