[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [f-cpu] dynamic code reuse (fwd)



hi,

Michael Riepe wrote:

On Tue, Dec 09, 2003 at 10:47:07PM -0800, Raj Mahajan wrote:

I read part of this paper... my main take-aways are as follows:

1) Instructions are often repeated verbatim. This happens for many reasons
which are often difficult to address in the code or the compiler.

As far as I remember, the address of the instruction is used to find
the cache entry. That is, caching won't work with repeated
instructions (like function pro/epilogue boilerplate and such).

But hey... I've found something to improve ;)

such as ... ?

2) Caching previous results of instructions can help by avoiding
re-computing complex instructions unnecessarily.

Emphasis on _complex_, yes.

The real problem -- and the reason why dynamic code reuse is not
useful for FC0 -- is that you need an OOO core with all bells,
whistles and gongs. In our current design, we can't deal with the
fact that a result may be available ahead of time. Maybe later.

F-CPU can't mandate that the core be OOO. Hence no standard F-CPU instruction can rely on a OOO core.

and, if one needs to repeat blocks of instructions, sub-functions exist for ages :-)

YG

*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu in the body. http://f-cpu.seul.org/