On Sat, 26 Jul 2003 13:03:36 -0400
David Abrahams <[EMAIL PROTECTED]> wrote:

> Well, that's self contradictory!

Not really. A bit later it says:

> On all x86 compatibles (Celeron, PIII, P4, Athlon, etc) you need gcc
> 2.95.x or earlier, or gcc 3.1 or newer. 

WRT best optimizer

> Also, I'm strongly suspicious that they only tested with vc6 and not
> with vc7.1.

I tend to agree, but OTOH, trying the Mojo test:

gcc 3.2 (-O3)
> CREATING default-constructed object at 0x22ff68
> CREATING default-constructed object at 0x22ff58
> CREATING default-constructed object at 0x22ff00
> MOVING mojo::temporary<Y> at 0x22ff00 into object at 0x22ff38
> MOVING mojo::fnresult<Y> at 0x22ff38 into object at 0x22ff48
> CREATING default-constructed object at 0x22ff38
> CREATING default-constructed object at 0x22ff38
> CREATING default-constructed object at 0x22ff00
> MOVING mojo::temporary<Y> at 0x22ff00 into object at 0x22ff38

msvc 7.1 (/Ox)
> CREATING default-constructed object at 0012FEDC
> CREATING default-constructed object at 0012FEE0
> CREATING default-constructed object at 0012FEC0
> MOVING mojo::temporary<Y> at 0012FEC0 into object at 0012FEBF
> MOVING mojo::temporary<Y> at 0012FEBF into object at 0012FED8
> MOVING mojo::fnresult<Y> at 0012FED8 into object at 0012FEE4
> CREATING default-constructed object at 0012FED7
> CREATING default-constructed object at 0012FED7
> CREATING default-constructed object at 0012FEC0
> MOVING mojo::temporary<Y> at 0012FEC0 into object at 0012FEBF
> MOVING mojo::temporary<Y> at 0012FEBF into object at 0012FED7

so, at least on certain situations (RVO?) gcc seems to be ahead of MSVC.
Unless I'm interpreting the results in too simplistic a way or I've done
something wrong with compiler options, of course :)

                                                                Juanma


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to