2 /* { dg-options "-O3 -mvsx -Wno-psabi" } */
3 /* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 } } } */
4 /* { dg-require-effective-target p8vector_hw } */
7 #define CHECK_H "sse2-check.h"
13 #define TEST sse2_test_pextrw_1
16 #include <emmintrin.h>
39 val1
.i
[0] = 0x04030201;
40 val1
.i
[1] = 0x08070605;
41 val1
.i
[2] = 0x0C0B0A09;
42 val1
.i
[3] = 0x100F0E0D;
44 res
[0] = _mm_extract_epi16 (val1
.x
, msk0
);
45 res
[1] = _mm_extract_epi16 (val1
.x
, msk1
);
46 res
[2] = _mm_extract_epi16 (val1
.x
, msk2
);
47 res
[3] = _mm_extract_epi16 (val1
.x
, msk3
);
48 res
[4] = _mm_extract_epi16 (val1
.x
, msk4
);
49 res
[5] = _mm_extract_epi16 (val1
.x
, msk5
);
50 res
[6] = _mm_extract_epi16 (val1
.x
, msk6
);
51 res
[7] = _mm_extract_epi16 (val1
.x
, msk7
);
62 for (i
= 0; i
< 8; i
++)
63 if (res
[i
] != val1
.s
[masks
[i
]])