1 /* { dg-do compile } */
2 /* { dg-options "-O -ffast-math -msse2 -fdump-tree-optimized" } */
3 
4 #include <emmintrin.h>
5 
f(__m128d x)6 int f(__m128d x){
7   x = _mm_sub_pd (x, x);
8   x = _mm_mul_pd (x, x);
9   double r = 42;
10   _mm_storeh_pd (&r, x);
11   int z = r == 0;
12   return __builtin_constant_p (z) && z;
13 }
14 
15 /* { dg-final { scan-tree-dump "return 1;" "optimized" } } */
16