diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-06-30 19:09:21 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-06-30 19:39:41 -0700 |
| commit | 095e24e537fcb6a702b992d946d1ca73d6f608b3 (patch) | |
| tree | ff875289e34de2ddba235648435b2abe5dae5bc9 /test/behavior/vector.zig | |
| parent | d3542be875704bffc931970948345d1a44e25b8e (diff) | |
| download | zig-095e24e537fcb6a702b992d946d1ca73d6f608b3.tar.gz zig-095e24e537fcb6a702b992d946d1ca73d6f608b3.zip | |
stage2: implement alignment calculation of vectors
closes #11856
Diffstat (limited to 'test/behavior/vector.zig')
| -rw-r--r-- | test/behavior/vector.zig | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/behavior/vector.zig b/test/behavior/vector.zig index fc49bce6e2..e355db5166 100644 --- a/test/behavior/vector.zig +++ b/test/behavior/vector.zig @@ -1048,3 +1048,27 @@ test "@shlWithOverflow" { try S.doTheTest(); comptime try S.doTheTest(); } + +test "alignment of vectors" { + try expect(@alignOf(@Vector(2, u8)) == 2); + try expect(@alignOf(@Vector(2, u1)) == 2); + try expect(@alignOf(@Vector(1, u1)) == 1); + try expect(@alignOf(@Vector(2, u16)) == 4); +} + +test "loading the second vector from a slice of vectors" { + 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 + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + + @setRuntimeSafety(false); + var small_bases = [2]@Vector(2, u8){ + @Vector(2, u8){ 0, 1 }, + @Vector(2, u8){ 2, 3 }, + }; + var a: []const @Vector(2, u8) = &small_bases; + var a4 = a[1][1]; + try expect(a4 == 3); +} |
