diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-07-03 13:33:09 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-07-03 13:33:09 -0700 |
| commit | b6981686649ab74b91ebb27bec8a29658b3d3923 (patch) | |
| tree | 810f4e48b4e4612a110ef0d31f89eda9bf9ad4b8 /test/behavior/vector.zig | |
| parent | 15f111a085dcd2da7b91da8e29b89def24cb3c6a (diff) | |
| download | zig-b6981686649ab74b91ebb27bec8a29658b3d3923.tar.gz zig-b6981686649ab74b91ebb27bec8a29658b3d3923.zip | |
stage2: update vector alignment logic
This follows LLVM14's lead on vector alignment, which computes byte
count based on the length premultiplied by bits.
This commit also disables behavior tests regressed by LLVM 14, only for
stage1. stage2 fortunately does not trip the regression.
Diffstat (limited to 'test/behavior/vector.zig')
| -rw-r--r-- | test/behavior/vector.zig | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/test/behavior/vector.zig b/test/behavior/vector.zig index e355db5166..a1785fcffb 100644 --- a/test/behavior/vector.zig +++ b/test/behavior/vector.zig @@ -5,6 +5,12 @@ const math = std.math; const expect = std.testing.expect; test "implicit cast vector to array - bool" { + if (builtin.zig_backend == .stage1) { + // Regressed in LLVM 14: + // https://github.com/llvm/llvm-project/issues/55522 + return error.SkipZigTest; + } + if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO @@ -391,6 +397,12 @@ test "initialize vector which is a struct field" { } test "vector comparison operators" { + if (builtin.zig_backend == .stage1) { + // Regressed in LLVM 14: + // https://github.com/llvm/llvm-project/issues/55522 + return error.SkipZigTest; + } + if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO @@ -1051,7 +1063,7 @@ test "@shlWithOverflow" { test "alignment of vectors" { try expect(@alignOf(@Vector(2, u8)) == 2); - try expect(@alignOf(@Vector(2, u1)) == 2); + try expect(@alignOf(@Vector(2, u1)) == 1); try expect(@alignOf(@Vector(1, u1)) == 1); try expect(@alignOf(@Vector(2, u16)) == 4); } |
