Messages in this thread | | | Date | Sat, 29 Jan 2000 02:30:31 -0500 | From | willy@thepuffi ... | Subject | Re: Code optimization <LEA Instruction> |
| |
On Thu, Jan 27, 2000 at 05:01:48PM -0500, Richard B. Johnson wrote: > The Intel reference manual tells about optimizing code. > One of the things it states is that the LEA instruction can > be used to change the value of an index register faster than > using the ADD instruction (Page G-10, Intel '486 Rag).
yes...
> I note that recent 'C' compilers do this. There are a lot of > LEA instructions that have replaced simple adds for adding > a constant displacement to an index register.
ok...
> As usual, the Intel reference manual is wrong for all types > of CPUs that I have tested (486-686).
with you...
> I wish somebody would have tested this information before wrong > information went into the code-generation of the 'C' compilers.
uh huh...
> The following program clearly shows that many more 'addl' instructions > may be executed than 'leal' instructions within a given time.
[snip example]
> The main point is, when attempting to optimize code, it would be > a good idea to test the many possible instruction-sequences before > you commit yourself, especially when providing inline 'asm' or > generating compiler output.
umm...
I still don't see the relevance to linux-kernel (which is not x86 specific and is not particularly tied to the intimate details of the gcc x86 backend). Perhaps you meant to send this to gcc-bug or take it up with the gcc x86 backend maintainer in personal mail instead?
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |