| // https://issues.dlang.org/show_bug.cgi?id=7413 |
| // { dg-additional-options "-mavx" { target avx_runtime } } |
| // { dg-do run { target { avx_runtime || vect_sizes_16B_8B } } } |
| // { dg-skip-if "needs gcc/config.d" { ! d_runtime } } |
| // { dg-skip-if "needs gcc/config.d" { ! d_runtime } } |
| import core.simd; |
| |
| void main() |
| { |
| byte16 b = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]; |
| assert(b.array[0] == 1); |
| assert(b.array[1] == 2); |
| assert(b.array[2] == 3); |
| assert(b.array[3] == 4); |
| assert(b.array[4] == 5); |
| assert(b.array[5] == 6); |
| assert(b.array[6] == 7); |
| assert(b.array[7] == 8); |
| assert(b.array[8] == 9); |
| assert(b.array[9] == 10); |
| assert(b.array[10] == 11); |
| assert(b.array[11] == 12); |
| assert(b.array[12] == 13); |
| assert(b.array[13] == 14); |
| assert(b.array[14] == 15); |
| assert(b.array[15] == 16); |
| |
| ubyte16 ub = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]; |
| assert(ub.array[0] == 1); |
| assert(ub.array[1] == 2); |
| assert(ub.array[2] == 3); |
| assert(ub.array[3] == 4); |
| assert(ub.array[4] == 5); |
| assert(ub.array[5] == 6); |
| assert(ub.array[6] == 7); |
| assert(ub.array[7] == 8); |
| assert(ub.array[8] == 9); |
| assert(ub.array[9] == 10); |
| assert(ub.array[10] == 11); |
| assert(ub.array[11] == 12); |
| assert(ub.array[12] == 13); |
| assert(ub.array[13] == 14); |
| assert(ub.array[14] == 15); |
| assert(ub.array[15] == 16); |
| |
| short8 s = [1,2,3,4,5,6,7,8]; |
| assert(s.array[0] == 1); |
| assert(s.array[1] == 2); |
| assert(s.array[2] == 3); |
| assert(s.array[3] == 4); |
| assert(s.array[4] == 5); |
| assert(s.array[5] == 6); |
| assert(s.array[6] == 7); |
| assert(s.array[7] == 8); |
| |
| ushort8 us = [1,2,3,4,5,6,7,8]; |
| assert(us.array[0] == 1); |
| assert(us.array[1] == 2); |
| assert(us.array[2] == 3); |
| assert(us.array[3] == 4); |
| assert(us.array[4] == 5); |
| assert(us.array[5] == 6); |
| assert(us.array[6] == 7); |
| assert(us.array[7] == 8); |
| |
| int4 i = [1,2,3,4]; |
| assert(i.array[0] == 1); |
| assert(i.array[1] == 2); |
| assert(i.array[2] == 3); |
| assert(i.array[3] == 4); |
| |
| uint4 ui = [1,2,3,4]; |
| assert(ui.array[0] == 1); |
| assert(ui.array[1] == 2); |
| assert(ui.array[2] == 3); |
| assert(ui.array[3] == 4); |
| |
| long2 l = [1,2]; |
| assert(l.array[0] == 1); |
| assert(l.array[1] == 2); |
| |
| ulong2 ul = [1,2]; |
| assert(ul.array[0] == 1); |
| assert(ul.array[1] == 2); |
| |
| float4 f = [1,2,3,4]; |
| assert(f.array[0] == 1); |
| assert(f.array[1] == 2); |
| assert(f.array[2] == 3); |
| assert(f.array[3] == 4); |
| |
| double2 d = [1,2]; |
| assert(d.array[0] == 1); |
| assert(d.array[1] == 2); |
| } |