This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: 11706 vs ([lno] Canonical iv creation)
- From: "B. Kosnik" <bkoz at nabi dot net>
- To: Paolo Carlini <pcarlini at suse dot de>
- Cc: rakdver at atrey dot karlin dot mff dot cuni dot cz, gcc-patches at gcc dot gnu dot org,libstdc++ at gcc dot gnu dot org, rguenth at tat dot physik dot uni-tuebingen dot de
- Date: Fri, 12 Mar 2004 11:35:52 -0600
- Subject: Re: 11706 vs ([lno] Canonical iv creation)
- References: <20040312013916.GA9757@atrey.karlin.mff.cuni.cz><4051E864.7070803@suse.de>
>double f(double a)
>{
> return std::pow(a, 4);
>}
>
>On x86, -O2 -fomit-frame-pointer -ftree-loop-optimize -fscalar-evolutions
>-funroll-loops:
>
>00000000 <f(double)>:
> 0: dd 44 24 04 fldl 0x4(%esp)
> 4: d8 c8 fmul %st(0),%st
> 6: d8 c8 fmul %st(0),%st
> 8: c3 ret
This is really great news y'all. Thanks for this.
Between this, -funit-at-a-time, and the tree-ssa bits to fold
std::complex, I'd say things are really looking up for highly optimized,
freely compiled C++ code.
Has anybody looked at what these tricks do to codegen for std::iterator
or std::string::iterator?
-benjamin