------- Comment #36 from dominiq at lps dot ens dot fr  2010-03-16 15:06 -------
> Note that the replacement for x**(n/3) * cbrt(x)**(n%3) does not seems guarded
> by any optimisation flag.

The condition is implemented further down in the code and I missed it:

      if (real_identical (&c2, &c)
          && ((optimize_insn_for_speed_p ()
               && powi_cost (n/3) <= POWI_MAX_MULTS)
              || n == 1))

Why the condition optimize_insn_for_speed_p () is not part of 

  if (fn != NULL_TREE
      && flag_unsafe_math_optimizations
      && (tree_expr_nonnegative_p (arg0)
          || !HONOR_NANS (mode)))

?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40106

Reply via email to