Thus spake Marcin Dalecki <[EMAIL PROTECTED]>: > David Schultz wrote: > > >Strangely, gcc in FreeBSD 5.0 actually generates *slower* code > >when compiling for more recent architectures than when compiling > >for a 386. I don't know whether that is a bug in gcc or whether > >gcc is using some fancy feature like SSE that the kernel handles > >poorly on context switches. I think there was some discussion on > >the lists about it earlier. > The reason is that the optimization done by GCC are ill balanced. > All the scheduling of instractions and what a not - which would be > fine on a micro scope level is causing so much higher pressure > on the CPUs caches that the code is actually loosing.
Interesting. So they redid the code generation for gcc 3 and their new tricks backfired. But at least they fixed the completely braindead things gcc 2.9x was doing with alignment, floating point, and combinations thereof, and they got the compiler to do more reasonable things on ia64. Any idea when they will have fixed the i386 anti-optimizations? To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message