Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!cs.utexas.edu!usc!snorkelwacker!spdcc!ima!esegue!compilers-sender From: preston@titan.rice.edu (Preston Briggs) Newsgroups: comp.compilers Subject: Re: Intermediate Representation Keywords: code, optimize, design Message-ID: <1990Aug12.212723.1247@rice.edu> Date: 13 Aug 90 01:57:41 GMT References: <1990Aug09.180627.18848@esegue.segue.boston.ma.us> <1990Aug9.225859.10175@rice.edu> <1990Aug11.203048.848@mintaka.lcs.mit.edu> Sender: compilers-sender@esegue.segue.boston.ma.us Reply-To: preston@titan.rice.edu (Preston Briggs) Organization: Rice University, Houston Lines: 23 Approved: compilers@esegue.segue.boston.ma.us In article <1990Aug11.203048.848@mintaka.lcs.mit.edu> jouvelot@brokaw.lcs.mit.edu (Pierre Jouvelot) writes: >With the AST approach, the cleanest way to deal with this overabundance of >control structures is to define a single "generic" loop construct; all the >control structures can then be trivially desugared (e.g., by the parser) >into your own version of loop. I don't see the trivial desuguring by the parser, particularly with an IF - GOTO form of the loop. I can see discovering the entire CFG and then doing interval analysis to discover a nice tree-like grouping of nested control structures a la Sharir (or others), but you're still punting on irreducible flow graphs. However, thanks for the interesting post on your design. It's fun to see how other people approach problems. -- Preston Briggs looking for the great leap forward preston@titan.rice.edu -- Send compilers articles to compilers@esegue.segue.boston.ma.us {spdcc | ima | lotus| world}!esegue. Meta-mail to compilers-request@esegue.