/* Test fragment for vectors of 2 elements. */ #ifndef UNSUPPORTED struct S { V in; VI mask; V out; }; struct S tests[] = { { { A, B }, { 0, 1 }, { A, B } }, { { A, B }, { -16, -1 }, { A, B } }, { { A, B }, { 1, 0 }, { B, A } }, { { A, B }, { 0, 0 }, { A, A } }, { { X, Y }, { 1, 1 }, { Y, Y } }, { { X, Y }, { 1, 0 }, { Y, X } }, }; struct S2 { V in1, in2; VI mask; V out; }; struct S2 tests2[] = { { { A, B }, { X, Y }, { 0, 1 }, { A, B } }, { { A, B }, { X, Y }, { 2, 3 }, { X, Y } }, { { A, B }, { X, Y }, { 0, 2 }, { A, X } }, { { A, B }, { X, Y }, { 2, 1 }, { X, B } }, { { A, B }, { X, Y }, { 3, 0 }, { Y, A } }, { { A, B }, { X, Y }, { 0, 0 }, { A, A } }, { { A, B }, { X, Y }, { 3, 3 }, { Y, Y } }, }; #endif