Optimizing questions

gclind01@starbase.spd.louisville.edu (George C. Lindauer)
24 Aug 1996 21:30:12 -0400

          From comp.compilers

Related articles
Optimizing questions gclind01@starbase.spd.louisville.edu (1996-08-24)
Re: Optimizing questions cliffc@ami.sps.mot.com (1996-08-27)
Optimizing questions lts@cs.rice.edu (Taylor Simpson) (1996-08-27)
| List of all articles for this month |

From: gclind01@starbase.spd.louisville.edu (George C. Lindauer)
Newsgroups: comp.compilers
Date: 24 Aug 1996 21:30:12 -0400
Organization: University of Louisville, Louisville KY USA
Keywords: optimize, question

I'm reading aho, sethi, and ullman on addign optimization to my coompiler.
The first question that came up is they talk about 'ambiguous definitionns'
vs 'unambiguous definitions' and I couldn't find where he told what the
difference is.


Another thing is, one day I coded a bunch of routines to make dags out of the
icode for basic blocks. Then I was aghast at the code it took, and I was
aghast at the runn-time memory requirements. The only nice thing I could
find about it was once the dag is constructed you don't have to go
node-searching. Unfortunately to construct the dag you DO have to go node
searching. I eventually gave up on dags and settled on a linear search
through the basic block to detect common subexpressions. Less code, less
memory, and hopefully only a little more time. Does anyone have a feel for
the relative time for a linear search for reuse versus a search through the
DAG during dag creation? Also does anyone know if I am introducing
potential problems with bad code by going at it this way? i'm keeping the
DAG version inn case I ever need to change the implementation.


Another thing is that I'm soon going to be generating code for a stack-based
virtual machine. I'm wondering if there is any info available on
expressionn optimization on a stack machine... I'm guessing there must be
because I've read here that people sometimes use stack-based intermedeate
code.


David
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.