New Advanced SIMD intrinsics tests.
[platform/upstream/gcc49.git] / gcc / testsuite / gcc.target / aarch64 / advsimd-intrinsics / vclt.c
1 #define INSN_NAME vclt
2 #define TEST_MSG "VCLT/VCLTQ"
3
4 #include "cmp_op.inc"
5
6 /* Expected results.  */
7 VECT_VAR_DECL(expected,int,8,8) [] = { 0x33, 0x33, 0x33, 0x33,
8                                        0x33, 0x33, 0x33, 0x33 };
9 VECT_VAR_DECL(expected,int,16,4) [] = { 0x333, 0x3333, 0x3333, 0x3333 };
10 VECT_VAR_DECL(expected,int,32,2) [] = { 0x33333333, 0x33333333 };
11 VECT_VAR_DECL(expected,int,64,1) [] = { 0x3333333333333333 };
12 VECT_VAR_DECL(expected,uint,8,8) [] = { 0xff, 0xff, 0xff, 0xff,
13                                         0xff, 0xff, 0x0, 0x0 };
14 VECT_VAR_DECL(expected,uint,16,4) [] = { 0xffff, 0xffff, 0x0, 0x0 };
15 VECT_VAR_DECL(expected,uint,32,2) [] = { 0x0, 0x0 };
16 VECT_VAR_DECL(expected,uint,64,1) [] = { 0x3333333333333333 };
17 VECT_VAR_DECL(expected,poly,8,8) [] = { 0x33, 0x33, 0x33, 0x33,
18                                         0x33, 0x33, 0x33, 0x33 };
19 VECT_VAR_DECL(expected,poly,16,4) [] = { 0x3333, 0x3333, 0x3333, 0x3333 };
20 VECT_VAR_DECL(expected,hfloat,32,2) [] = { 0x33333333, 0x33333333 };
21 VECT_VAR_DECL(expected,int,8,16) [] = { 0x33, 0x33, 0x33, 0x33,
22                                         0x33, 0x33, 0x33, 0x33,
23                                         0x33, 0x33, 0x33, 0x33,
24                                         0x33, 0x33, 0x33, 0x33 };
25 VECT_VAR_DECL(expected,int,16,8) [] = { 0x333, 0x3333, 0x3333, 0x3333,
26                                         0x333, 0x3333, 0x3333, 0x3333 };
27 VECT_VAR_DECL(expected,int,32,4) [] = { 0x33333333, 0x33333333,
28                                         0x33333333, 0x33333333 };
29 VECT_VAR_DECL(expected,int,64,2) [] = { 0x3333333333333333,
30                                         0x3333333333333333 };
31 VECT_VAR_DECL(expected,uint,8,16) [] = { 0xff, 0xff, 0xff, 0xff,
32                                          0xff, 0xff, 0xff, 0xff,
33                                          0xff, 0xff, 0xff, 0xff,
34                                          0x0, 0x0, 0x0, 0x0 };
35 VECT_VAR_DECL(expected,uint,16,8) [] = { 0xffff, 0xffff, 0xffff, 0xffff,
36                                          0xffff, 0xffff, 0x0, 0x0 };
37 VECT_VAR_DECL(expected,uint,32,4) [] = { 0xffffffff, 0xffffffff, 0x0, 0x0 };
38 VECT_VAR_DECL(expected,uint,64,2) [] = { 0x3333333333333333,
39                                          0x3333333333333333 };
40 VECT_VAR_DECL(expected,poly,8,16) [] = { 0x33, 0x33, 0x33, 0x33,
41                                          0x33, 0x33, 0x33, 0x33,
42                                          0x33, 0x33, 0x33, 0x33,
43                                          0x33, 0x33, 0x33, 0x33 };
44 VECT_VAR_DECL(expected,poly,16,8) [] = { 0x3333, 0x3333, 0x3333, 0x3333,
45                                          0x3333, 0x3333, 0x3333, 0x3333 };
46 VECT_VAR_DECL(expected,hfloat,32,4) [] = { 0x33333333, 0x33333333,
47                                            0x33333333, 0x33333333 };
48
49 VECT_VAR_DECL(expected_uint,uint,8,8) [] = { 0xff, 0xff, 0xff, 0x0,
50                                              0x0, 0x0, 0x0, 0x0 };
51 VECT_VAR_DECL(expected_uint,uint,16,4) [] = { 0xffff, 0xffff, 0x0, 0x0 };
52 VECT_VAR_DECL(expected_uint,uint,32,2) [] = { 0xffffffff, 0x0 };
53
54 VECT_VAR_DECL(expected_q_uint,uint,8,16) [] = { 0xff, 0xff, 0xff, 0xff,
55                                                 0x0, 0x0, 0x0, 0x0,
56                                                 0x0, 0x0, 0x0, 0x0,
57                                                 0x0, 0x0, 0x0, 0x0 };
58 VECT_VAR_DECL(expected_q_uint,uint,16,8) [] = { 0xffff, 0xffff, 0xffff, 0xffff,
59                                                 0xffff, 0xffff, 0x0, 0x0 };
60 VECT_VAR_DECL(expected_q_uint,uint,32,4) [] = { 0xffffffff, 0xffffffff,
61                                                 0x0, 0x0 };
62
63 VECT_VAR_DECL(expected_float,uint,32,2) [] = { 0xffffffff, 0x0 };
64 VECT_VAR_DECL(expected_q_float,uint,32,4) [] = { 0xffffffff, 0xffffffff,
65                                                  0x0, 0x0 };
66
67 VECT_VAR_DECL(expected_uint2,uint,32,2) [] = { 0x0, 0x0 };
68 VECT_VAR_DECL(expected_uint3,uint,32,2) [] = { 0xffffffff, 0x0 };
69 VECT_VAR_DECL(expected_uint4,uint,32,2) [] = { 0x0, 0x0 };
70
71 VECT_VAR_DECL(expected_nan,uint,32,2) [] = { 0x0, 0x0 };
72 VECT_VAR_DECL(expected_mnan,uint,32,2) [] = { 0x0, 0x0 };
73 VECT_VAR_DECL(expected_nan2,uint,32,2) [] = { 0x0, 0x0 };
74
75 VECT_VAR_DECL(expected_inf,uint,32,2) [] = { 0xffffffff, 0xffffffff };
76 VECT_VAR_DECL(expected_minf,uint,32,2) [] = { 0x0, 0x0 };
77 VECT_VAR_DECL(expected_inf2,uint,32,2) [] = { 0x0, 0x0 };
78
79 VECT_VAR_DECL(expected_mzero,uint,32,2) [] = { 0x0, 0x0 };