|math expressions optimalization email@example.com (Trix) (2002-06-13)|
|Re: math expressions optimalization Sid-Ahmed-Ali.TOUATI@inria.fr (Sid Ahmed Ali TOUATI) (2002-06-14)|
|Re: math expressions optimalization firstname.lastname@example.org (Walter Misar) (2002-06-14)|
|Re: math expressions optimalization email@example.com (Allyn Dimock) (2002-06-14)|
|Re: math expressions optimalization firstname.lastname@example.org (Tomasz Kowaltowski) (2002-06-17)|
|From:||"Allyn Dimock" <email@example.com>|
|Date:||14 Jun 2002 15:26:41 -0400|
|Organization:||Harvard University, Cambridge, Massachusetts|
|Posted-Date:||14 Jun 2002 15:26:41 EDT|
"Trix" <firstname.lastname@example.org> writes:
> I`m going to implement simple alghoritm to
> optimalize math expressions in terms of
> use of memory cells.
> I don`t know the name of such alghoritm in English
> and can find it on the net.
Normally the temporaries generated in evaluating expressions are
allocated in registers rather than in memory cells. I don't know a
particular name for your algorithm. However, see "the dragon book"
page 535 in the 1986 edition "Storage for Temporary Names" in Section
9.5: "Next-Use information". Or see Appel's books "Modern Compiler
Implementation in ..." under "Register Allocation for Trees".
In the case of register allocation, it is sometimes the case that
reusing a register name too soon limits the ability of the machine to
find instruction-level parallelism.
The same algorithm (reusing locations that are no longer live) is also
used to minimize the size of stack frames.
-- Allyn Dimock
Return to the
Search the comp.compilers archives again.