1/* { dg-do compile } */
2/* { dg-options "-O -msse" } */
3/* { dg-require-effective-target sse } */
4
5#include <xmmintrin.h>
6
7typedef unsigned short v4hi __attribute__ ((vector_size (8)));
8
9int f(unsigned short n)
10{
11   __m64 vec = (__m64)(v4hi){ 0, 0, 1, n };
12   __m64 hw = _mm_mulhi_pi16 (vec, vec);
13   return _mm_extract_pi16 (hw, 0);
14}
15