From mboxrd@z Thu Jan 1 00:00:00 1970 To: 9fans@cse.psu.edu From: "AMSRL-CI-CN" Message-ID: References: <20020226213451.56e87b33.matt@proweb.co.uk>, <200202270021.g1R0L0s43681@ducky.net> Subject: Re: [9fans] compilers - was GUI toolkit for Plan 9 Date: Thu, 28 Feb 2002 15:11:13 +0000 Topicbox-Message-UUID: 5bcde532-eaca-11e9-9e20-41e7f4b1d025 "Mike Haertel" wrote in message news:200202270021.g1R0L0s43681@ducky.net... > The idea that "hardware/software co-design" is Good has to rank > among the great fallacies of computer science and the computing > industry in the last two decades. Unfortunately, performance expectations for new processors require rather complex architectures involving multiple concurrent pipelines, etc. making efficient use of the architectures difficult; therefore more responsibility is placed on the code generators. This seems inevitable. There are C compilers whose "code" is actually gate configurations for FPGAs, etc. which is of course this idea taken to an extreme. In earlier days of computing, little attention was usually paid to the requirements of HLLs when designing ISAs, and sometimes what the IS architects guessed would be helpful really wasn't (e.g. PDP-11 MARK instruction). (There were a few notable exceptions, e.g. Burroughs [56][57]00 models.) The result was that major parts of processors were not used at all by HLLs, which was bad economics. This lack of input from compiler developers was widely recognized, and by the early 1980s several processor manufacturers had changed their procedures so that the hardware guys and compiler guys talked to each other early enough to influence the design (of both). These days, it is generally assumed that most programming is going to be in C, so attention is focussed on supporting C to the possible detriment of other languages.. > However they might curse the oddities of the x86 ISA, I am sure the > Plan 9 developers are grateful for the fact that all x86 implementations > are designed with a goal of getting at least adeqaute performance > without recompiling. ? Intel's x86 architecture was designed to be used from assembly language, not HLL, and it is pretty bad when judged by its support for HLLs. Even the more recent MMX etc. extensions aren't well suited for use from HLLs except via machine-specific asm hooks.