Re: Writing fast compilers...

blenko-tom@CS.YALE.EDU (Tom Blenko)
Fri, 16 Aug 1991 20:17:53 GMT

          From comp.compilers

Related articles
[3 earlier articles]
Re: Writing fast compilers... davidsen@crdos1.crd.ge.com (1991-08-13)
Re: Writing fast compilers... preston@helena.rice.edu (1991-08-13)
Re: Writing fast compilers... alex@vmars.tuwien.ac.at (1991-08-13)
Re: Writing fast compilers... pcg@aber.ac.uk (1991-08-14)
Re: Writing fast compilers... markh@csd4.csd.uwm.edu (1991-08-16)
Re: Writing fast compilers... glew@pdx007.intel.com (1991-08-16)
Re: Writing fast compilers... blenko-tom@CS.YALE.EDU (1991-08-16)
Re: Writing fast compilers... brnstnd@kramden.acf.nyu.edu (1991-08-18)
Re: Writing fast compilers... henry@zoo.toronto.edu (1991-08-20)
Re: Writing fast compilers... andy@DEC-Lite.Stanford.EDU (1991-08-21)
| List of all articles for this month |

Newsgroups: comp.compilers
From: blenko-tom@CS.YALE.EDU (Tom Blenko)
Keywords: performance, design
Organization: Yale University Computer Science Dept., New Haven, CT 06520-2158
References: <PCG.91Aug11154854@aberdb.aber.ac.uk> 91-08-051 91-08-066
Date: Fri, 16 Aug 1991 20:17:53 GMT

In article 91-08-066 markh@csd4.csd.uwm.edu (Mark William Hopkins) writes:
|In article 91-08-051 davidsen@crdos1.crd.ge.com (bill davidsen) writes:
|> Note that true one pass compilers can not generate best possible code
|>for some machines, notably those which have a short branch instruction,
|>since forward jumps must be coded as long jumps.
|
|Evreything can always be done in one pass. The distinction is wholly
|artificial.


It's not artificial, it's a practical issue for those who write (assemblers
and) compilers.


|Use logical variables or something equivalent, and Unification
|(or something equivalent).


If you're using a language with logical variables and unification, this may be
a satisfactory approach (ref. Warren paper). There's no reason why anyone
needs something so powerful in another language, however, since they only need
implement backpatching.


|It's easy to think up an algorithm, based on
|Unification, doing a "least fixed point" calculation, for optimally
|resolving branches (once you know what Unification is).


It's not once you realize that there needn't be a unique least fixed
point for this problem.


Tom
--


Post a followup to this message

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