Re: Why Can't We Build a C Compiler?

olender@rachmaninov.CS.ColoState.EDU (Kurt Olender)
28 Dec 88 17:37:50 GMT

          From comp.compilers

Related articles
Why Can't We Build a C Compiler? acw!guthery@uunet.uu.net (1988-12-18)
Re: Why Can't We Build a C Compiler? pardo@june.cs.washington.edu (1988-12-19)
Re: Why Can't We Build a C Compiler? peterd@june.cs.washington.edu (1988-12-21)
Re: Why Can't We Build a C Compiler? henry@zoo.toronto.edu (1988-12-21)
Re: Why Can't We Build a C Compiler? nick@lfcs.ed.ac.uk (Nick Rothwell) (1988-12-20)
Re: Why Can't We Build a C Compiler? seanf@sco.uucp (1988-12-23)
Re: Why Can't We Build a C Compiler? daveb@lethe.uucp (1988-12-26)
Re: Why Can't We Build a C Compiler? olender@rachmaninov.CS.ColoState.EDU (1988-12-28)
Re: Why Can't We Build a C Compiler? frode@m2cs.naggum.se (Frode Odegard) (1988-12-29)
Re: Why Can't We Build a C Compiler? unido!gmdzi!jc@uunet.uu.net (1989-01-05)
Why can't we build a C compiler? think!compass!worley@EDDIE.MIT.EDU (1988-12-19)
Re: Why Can't We Build a C Compiler? jbs@fenchurch.mit.edu (1989-01-03)
Re: Why can't we build a C compiler? uokmax!glcowin@Central.Sun.COM (1989-01-18)
Re: Why can't we build a C compiler? limonce@pilot.njin.net (1989-01-24)
[2 later articles]
| List of all articles for this month |

From: olender@rachmaninov.CS.ColoState.EDU (Kurt Olender)
Newsgroups: comp.compilers
Date: 28 Dec 88 17:37:50 GMT
References: <3080@ima.ima.isc.com> <3100@ima.ima.isc.com>
Organization: Colorado State University, Ft. Collins CO 80523

David Collier-Brown makes a good point. One of the main factors that makes
producing a good+correct code generator so difficult is the huge case analysis
required to map a given programming language construct to the best equivalent
code on most machine architectures.


Wulf makes a good case for reducing this case analysis by proper
considerations when designing the architecture of the machine in the first
place[1]. This does not imply a CISC philosophy. He argues that it is not
the semantic gap but the irregularities and non-orthogonalities in the
architecture that dramatically inflates the number of cases with which a code
generator must deal. In fact, he claims that hardware designers' attempts to
reduce the semantic gap have increased the case analysis required. The higher
level operations provided do not always map directly to every language or are
too general to always be efficient, so that case analysis is required to
determine when the higher level operations are usable or efficient, and when
when they are not, to determine what else to do.


Half the blame, anyway, goes to the hardware designers. (The other half
certainly belongs with language designers and ad hoc semantics.)


[1] William A. Wulf, "Compilers and Computer Architecture", Computer,
July 1981, pp. 41-48.
--------------------------------------------------------
|Kurt Olender | Computer Science Dept. |
|olender@cs.colostate.edu | Colorado State Univ. |
|303-491-7015 | Fort Collins, CO 80523 |
--


Post a followup to this message

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