1/* { dg-do compile } */ 2/* { dg-options "-O2 -ffast-math -ftree-vectorize -msse -mfpmath=sse -mrecip" } */ 3/* { dg-require-effective-target sse } */ 4 5float a[16]; 6float b[16]; 7float r[16]; 8 9extern float sqrtf (float); 10 11void t1(void) 12{ 13 int i; 14 15 for (i = 0; i < 16; i++) 16 r[i] = a[i] / sqrtf (b[i]); 17} 18 19void t2(void) 20{ 21 int i; 22 23 for (i = 0; i < 16; i++) 24 r[i] = sqrtf (a[i] / b[i]); 25} 26 27void t3(void) 28{ 29 int i; 30 31 for (i = 0; i < 16; i++) 32 r[i] = sqrtf (a[i]); 33} 34 35/* { dg-final { scan-assembler-times "rsqrtps" 3 } } */ 36