2 /* { dg-require-effective-target sse4 } */
3 /* { dg-options "-O2 -msse4.1" } */
6 #define CHECK_H "sse4_1-check.h"
10 #define TEST sse4_1_test
15 #include <smmintrin.h>
35 } res
[8], val1
, val2
, tmp
;
49 res
[0].x
= _mm_insert_ps (val2
.x
, val1
.x
, msk0
);
50 res
[1].x
= _mm_insert_ps (val2
.x
, val1
.x
, msk1
);
51 res
[2].x
= _mm_insert_ps (val2
.x
, val1
.x
, msk2
);
52 res
[3].x
= _mm_insert_ps (val2
.x
, val1
.x
, msk3
);
59 for (i
= 0; i
< 4; i
++)
60 res
[i
+ 4].x
= _mm_insert_ps (val2
.x
, val1
.x
, msk4
);
70 tmp
.f
[(masks
[i
] & 0x30) >> 4] = val1
.f
[(masks
[i
] & 0xC0) >> 6];
72 for (j
= 0; j
< 4; j
++)
73 if (masks
[i
] & (0x1 << j
))
76 if (memcmp (&res
[i
], &tmp
, sizeof (tmp
)))