On Wed, Jan 13, 2010 at 10:06 AM, Stephen White <senorbla...@chromium.org>wrote:

> On Wed, Jan 13, 2010 at 12:19 PM, Dan Kegel <d...@kegel.com> wrote:
>
>> On Wed, Jan 13, 2010 at 9:12 AM, Stephen White <senorbla...@chromium.org>
>> wrote:
>> > 2)  Most of the supposed performance advantage of strict aliasing rules
>> is
>> > probably taken care of by memory disambiguation in modern (ie., Core2
>> and
>> > later) CPUs.
>>
>> I kind of doubt that.  Disallowing aliasing lets the compiler do
>> a number of high-level optimizations that the chip could never do on its
>> own.
>> See e.g.
>>
>> http://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html
>
>
> (As a side note, I find this example somewhat contrived:  if this were
> performance-critical code, the programmer would pull the dereference out of
> the loop anyway, not rely on the compiler to do it.)
>
> That said, the "data-driven" answer would be to run perf benchmarks with
> and without strict aliasing, and see the effect.  It might even help us find
> some hotspots which we could improve under MSVC.
>
> I'm for -fstrict-aliasing except for third_party.
>>
>
> Whichever is decided, I think making it explicit would make life easier for
> the people on different compiler versions.
>
> Stephen


I have a bias towards -fstrict-aliasing, but whichever the choice, I think
we should have the same default for all the compiler versions (i.e. forcing
it either way).
For Chrome OS, we will use gcc 4.4 so we'll get more exposure in-house to
that particular compiler.

Antoine
-- 
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev

Reply via email to