2 /* { dg-require-effective-target sse4 } */
3 /* { dg-options "-O3 -msse4.1 -mno-avx2" } */
6 #define CHECK_H "sse4_1-check.h"
10 #define TEST sse4_1_test
15 extern void abort (void);
19 unsigned short b
[N
], d
, f
;
21 __attribute__((noinline
)) short
26 for (i
= 0; i
< N
; ++i
)
27 if (r
< a
[i
]) r
= a
[i
];
31 __attribute__((noinline
)) unsigned short
36 for (i
= 0; i
< N
; ++i
)
37 if (r
< b
[i
]) r
= b
[i
];
41 __attribute__((noinline
)) short
46 for (i
= 0; i
< N
; ++i
)
47 if (r
> a
[i
]) r
= a
[i
];
51 __attribute__((noinline
)) unsigned short
55 unsigned short r
= 65535;
56 for (i
= 0; i
< N
; ++i
)
57 if (r
> b
[i
]) r
= b
[i
];
65 for (i
= 0; i
< N
; ++i
)
68 b
[i
] = i
+ 32768 - N
/ 2;
73 b
[4 * N
/ 5] = 32768 - N
;
74 if (vecsmax () != N
|| vecsmin () != -N
)
76 if (vecumax () != 32768 + N
|| vecumin () != 32768 - N
)