| /* Test fragment for vectors of 8 elements. */ |
| |
| #ifndef UNSUPPORTED |
| |
| struct S |
| { |
| V in; |
| VI mask; |
| V out; |
| }; |
| |
| struct S tests[] = { |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { 0, 1, 2, 3, 4, 5, 6, 7 }, |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { 0x10, 0x21, 0x32, 0x43, 0x54, 0x65, 0x76, 0x87 }, |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { 7, 6, 5, 4, 3, 2, 1, 0 }, |
| { H1, G1, F1, E1, D1, C1, B1, A1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { 7, 0, 5, 3, 2, 4, 1, 6 }, |
| { H1, A1, F1, D1, C1, E1, B1, G1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { 0, 2, 1, 3, 4, 6, 5, 7 }, |
| { A1, C1, B1, D1, E1, G1, F1, H1 }, |
| }, |
| { |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 3, 1, 2, 0, 7, 5, 6, 4 }, |
| { D2, B2, C2, A2, H2, F2, G2, E2 }, |
| }, |
| { |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0, 0, 0, 0 }, |
| { A2, A2, A2, A2, A2, A2, A2, A2 }, |
| }, |
| { |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 1, 6, 1, 6, 1, 6, 1, 6 }, |
| { B2, G2, B2, G2, B2, G2, B2, G2 }, |
| } |
| }; |
| |
| struct S2 |
| { |
| V in1, in2; |
| VI mask; |
| V out; |
| }; |
| |
| struct S2 tests2[] = { |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0, 1, 2, 3, 4, 5, 6, 7 }, |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 8, 9, 10, 11, 12, 13, 14, 15 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0, 8, 1, 9, 2, 10, 3, 11 }, |
| { A1, A2, B1, B2, C1, C2, D1, D2 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0, 15, 4, 11, 12, 3, 7, 8 }, |
| { A1, H2, E1, D2, E2, D1, H1, A2 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0, 0, 0, 0, 0, 0, 0, 0 }, |
| { A1, A1, A1, A1, A1, A1, A1, A1 }, |
| }, |
| { |
| { A1, B1, C1, D1, E1, F1, G1, H1 }, |
| { A2, B2, C2, D2, E2, F2, G2, H2 }, |
| { 0x1e, 0x2e, 0x3e, 0x4e, 0x5e, 0x6e, 0x7e, 0x8e }, |
| { G2, G2, G2, G2, G2, G2, G2, G2 }, |
| }, |
| }; |
| |
| #endif |