Xref: utzoo comp.arch:17015 comp.lang.misc:5124 Path: utzoo!attcan!uunet!aplcen!uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!sunybcs!boulder!grunwald From: grunwald@foobar.colorado.edu (Dirk Grunwald) Newsgroups: comp.arch,comp.lang.misc Subject: Re: Compiler Costs Message-ID: <23285@boulder.Colorado.EDU> Date: 9 Jul 90 20:20:30 GMT References: <1797@apctrc.UUCP> <1990Jul6.161158.1297@zoo.toronto.edu> <1990Jul8.230954.18881@ecn.purdue.edu> <23268@boulder.Colorado.EDU> Sender: news@boulder.Colorado.EDU Reply-To: grunwald@foobar.colorado.edu Organization: University of Colorado at Boulder Lines: 17 In-reply-to: atk@boulder.Colorado.EDU's message of 9 Jul 90 15:30:25 GMT The MIPS compiler suite (and old bit of software, too) does global optimization. I think that they still adhere to a set register passing convention, but they do things like eliminate stack manipulation for leaf procedures, etc etc. Several people (Steinkist & Hennessy, Wahl, Wallace) have investigated the advantages of global register allocation at link time, and it does very well. You don't even need to have runtime performance data to tune the allocation; simple bottom-up coloring appears to work very well. Someone just needs to hack it into Gnu C. This would raise the common denominator of compiler performance & make companies either provide something of comparable performance or support the Gnu compiler. I still can't believe how many systems are shipped with shitty compilers.