/* { dg-do compile } */ | |
/* { dg-options "-O2 -ffast-math -fdump-tree-reassoc1" } */ | |
double test1 (double x, double y, double z, double weight) | |
{ | |
double tmp1 = x / weight; | |
double tmp2 = y / weight; | |
double tmp3 = -x / weight; | |
return tmp1 + tmp2 + tmp3; | |
} | |
/* The division should be un-distributed and all references to x should | |
be gone. */ | |
/* { dg-final { scan-tree-dump-times "/" 1 "reassoc1" } } */ |