------- Comment #40 from rguenther at suse dot de 2010-03-16 15:52 ------- Subject: Re: [4.4/4.5 Regression] Weird interaction between optimize_insn_for_speed_p and -funsafe-math-optimizations
On Tue, 16 Mar 2010, dominiq at lps dot ens dot fr wrote: > > > ------- Comment #39 from dominiq at lps dot ens dot fr 2010-03-16 15:49 > ------- > > Especially on embedded targets with soft-float the multiplication would > > add a significant code size penalty. > > Even in this case this would strongly of the code. It may be true if other > pieces require log and exp. If not I seriously doubt that replacing the code > for multiplies and square roots will be larger than the code for log and exp. Parse error. > My (very limited) understanding of this issue is that at some point x*sqrt(x) > is replaced with pow(x,1.5) (so that pow(x,a)*pow(x,b) is optimized as > pow(x,a+b)). So even if the programmer write x*sqrt(x) (s)he can end up with > pow(x,1.5), resulting in poor performances in term of both speed and size (not > speaking of accuracy). Yes, that's true. This is what you'd expect when optimizing for size - turn x*sqrt(x) to pow(x,1.5). Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40106