1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -msse -mno-sse4" } */
       3  /* { dg-final { scan-assembler-not "movlhps" } } */
       4  /* { dg-final { scan-assembler-not "unpckhps" } } */
       5  /* { dg-final { scan-assembler-not "unpcklps" } } */
       6  /* { dg-final { scan-assembler-not "shufps" } } */
       7  
       8  typedef float __v4sf __attribute__ ((__vector_size__ (16)));
       9  typedef float __m128 __attribute__ ((__vector_size__ (16), __may_alias__));
      10  
      11  static __m128
      12  vector_init (float f0,float f1, float f2,float f3)
      13  {
      14    __v4sf y = { f0, f1, f2, f3 };
      15     return (__m128) y;
      16  }
      17  
      18  __m128
      19  foo2 (__m128 x)
      20  {
      21    return vector_init (11.4, ((__v4sf) x)[1], ((__v4sf) x)[2],
      22  		      ((__v4sf) x) [3]);
      23  }