1  /* PR target/49002 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-O -mavx" } */
       4  
       5  #include <immintrin.h>
       6  
       7  void foo(const __m128d from, __m256d *to)
       8  {
       9    *to = _mm256_castpd128_pd256(from);
      10  }
      11  
      12  /* Ensure we store ymm, not xmm.  */
      13  /* { dg-final { scan-assembler-not "vmovapd\[\t \]*%xmm\[0-9\]\+,\[^,\]*" } } */
      14  /* { dg-final { scan-assembler-not "vmovaps\[\t \]*%xmm\[0-9\]\+,\[^,\]*" } } */
      15  /* { dg-final { scan-assembler "vmovap\[sd\]\[\t \]*%ymm\[0-9\]\+,\[^,\]*" } } */