/* { dg-do compile } */ /* { dg-options "-O2 -mavx" } */ #include static inline __m256 add1(const __m256 *a, const __m256 *b) { return _mm256_add_ps(*a, *b); } void foo1(__m256 *a, const __m256 b) { *a = add1(a, &b); } static inline __m128 add2(const __m128 *a, const __m128 *b) { return _mm_add_ps(*a, *b); } void foo2(__m128 *a, const __m128 b) { *a = add2(a, &b); } /* { dg-final { scan-assembler-not "vmovups" } } */