aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/c-c++-common/torture/vshuf-8.inc
blob: e6475226a1132ad7a8b175c053c58a91609b41f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/* 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