lkml.org 
[lkml]   [1997]   [Jan]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: jump/alignment considerations
From
Date
>>>>> "mlehmann" == Marc Lehmann <mlehmann@hildesheim.sgh-net.de> writes:

mlehmann> Since lea (%eax),%eax's are used to create 2-7 byte nops,
mlehmann> removing any alignment will significantly reduce AGI's,
mlehmann> too, which is probably why the pentium is not getting
mlehmann> slower (it actually gets a slight advantage).

gas 2.7 generates suboptimal padding bytes, but this could be fixed.
For a two byte NOP gas emits `lea (%esi),%esi', when it could use
`movl %esi,%esi' and avoid the possibility of an AGI stall. For some
larger pads it puts two lea's back to back *both using %esi*, which is
non-pairable and causes a guaranteed AGI stall.

-Mat

\
 
 \ /
  Last update: 2005-03-22 13:38    [from the cache]
©2003-2011 Jasper Spaans