Re: Requirements for IL's

boehm@parc.xerox.com (Hans Boehm)
Mon, 3 Aug 1992 16:35:46 GMT

          From comp.compilers

Related articles
Re: Pros and cons of high-level intermediate languages gat@forsight.jpl.nasa.gov (1992-07-29)
Requirements for IL's eifrig@beanworld.cs.jhu.edu (1992-07-31)
Re: Requirements for IL's boehm@parc.xerox.com (1992-08-03)
| List of all articles for this month |

Newsgroups: comp.compilers
From: boehm@parc.xerox.com (Hans Boehm)
Organization: Xerox PARC
Date: Mon, 3 Aug 1992 16:35:46 GMT
References: 92-07-107 92-07-121
Keywords: translator, design

eifrig@beanworld.cs.jhu.edu (Jonathan Eifrig) writes:


> This is basically C, with the addition of a garbage-collected
>heap, and the elimination of the run-time stack.


> Comments?


I don't understand this proposal. If you get rid of the run-time stack,
how does a compiler get it back? Presumably, I still want to be able to
compile C or Pascal to this IL with reasonable performance. In many
environments (e.g. memory limited targets, probably machines with high
cache-miss penalty), heap allocating everything is a disaster. (If C is
the source language, it's probably an unconditional disaster, since it's
hard to move objects.) Having the front end introduce an explicit stack
data structure is probably a mistake, since what goes in the stack depends
on register availability. Having the back end infer what goes on the
stack probably makes performance too unpredictable for many applications.


Nonreturning calls seem like a good idea, but not as the only call
mechanism. Did I miss something here?


Hans-J. Boehm
(boehm@parc.xerox.com)
--


Post a followup to this message

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