This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Optimization of conditional access to globals: thread-unsafe?


Andi Kleen wrote:
On Mon, Oct 29, 2007 at 03:51:27PM -0400, Robert Dewar wrote:
Sure, well nearly every optimization has some case where it is a pessimization (one interesting thing that happens is that if you
change the length of generated code in *any* way you may be unlucky
and cause a systematic instruction cache miss in a loop, inlining

icache misses are hard in general and agreed the compiler cannot do too much about them (except for trying not to generate too bloated code in general)

But adding gratuious dcache misses is a completely different thing.
That is something the compiler has control over and should just
not do.

Generally sounds right, though there are cases where this is OK (I think for example there are examples of optimizations of priming the explicit pipeline of the i860 may generate an extra dcache miss but outside the loop, and conceivably that could be worth while).

-Andi



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]