https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89653
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Oh, no. It is present even in .original and we somehow fail to elide it (maybe because of the clobber?! ;; Function void loop1(double*, double, int) (null) ;; enabled by -tree-original { { int i = 0; <<cleanup_point int i = 0;>>; while (1) { if (i >= end) goto <D.17248>; <<cleanup_point <<< Unknown tree: expr_stmt (void) (*((double * restrict) vec + (sizetype) ((long unsigned int) i * 8)) = (double) *std::min<double> ((const double &) vec + (sizetype) ((long unsigned int) i * 8), (const double &) &TARGET_EXPR <D.17247, *((double * restrict) vec + (sizetype) ((long unsigned int) i * 8)) / x>)) >>>>>; <<cleanup_point (void) ++i>>; } <D.17248>:; } }