Re: [AD] Color convertors |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Eric Botcazou wrote:
[snip]
I've applied the two instruction-length optimizations you suggested:
- xorl %reg,%reg instead of movl $0, %reg
You were right, xor is fully pairable even on P1 so that this is a valid
optimization in most cases on P1. However, as xor modifies the flags
contrary to mov, it is not usable in some cases like:
decl %edx
movl $0, %eax
jnz loop
True, but in most cases, the xorl tricks fits in well.
I'm not sure that this optimization is still valid on newer processors that
have got more than 2 pipelines, as xor %reg,%reg adds a fake read dependency
on %reg.
The i686's ROB catches this, and 'knows' that there's no read involved
(kudos to Intel!) I'm not sure about the PMMX and under.
[snip]
I've also done some testing on my old P200 and this time I was right:
shl/shr are not fully pairable on P1 (only in the U pipe):
I was sure they were...Perhaps this is only valid for the PMMX?
[snip]
--
- Robert J Ohannessian
"Microsoft code is probably O(n^20)" (my CS prof)
http://pages.infinit.net/voidstar/