Mail Archives: pgcc/1998/07/13/23:04:26
On Mon, Jul 13, 1998 at 02:05:12PM +0000, Vincent Diepeveen wrote:
>
> Is it possible to give the compiler the task to put an entire function
> optional in MMX?
I don't understand this sentence (could you re-word)?
> I have some integer critical code (the time critical code of chessprogram)
> where the biggest part can be done in MMX code. It's just multiplying,
> shift, AND, OR, addition, decreasing, array lookups and especially
> compares.
well, the mmx unit is quite limited in its capabilities. "decreasing" is
non-trivial for example, if you need a constant, the only way to get that
into an mmx register is to load it from a "normal" register or from memory.
"array lookups" are also impossible since you can't use mmx registers in
addressing modes. multiplying isn't possible and so on and so on.
at the moment, the mmx support is quite hacky and doesn't actually
"optimize" very good, but in some cases (and in integer-only programs) it
might win.
> Using 8 MMX registers would be rather cool, because i now suffer
> from those stupid partial register stalls, and even more from the slow
> branch prediction which does a horrible job on PII, considering that
> every node requires a new set of patterns that are true.
hmm.. ;->
-----==- |
----==-- _ |
---==---(_)__ __ ____ __ Marc Lehmann +--
--==---/ / _ \/ // /\ \/ / pcg AT goof DOT com |e|
-=====/_/_//_/\_,_/ /_/\_\ --+
The choice of a GNU generation |
|
- Raw text -