Re: MIPS optimizing compiler

cfc@world.std.com (Chris F Clark)
30 Aug 1997 00:49:24 -0400

          From comp.compilers

Related articles
MIPS optimizing compiler brdsutte@elis.rug.ac.be (1997-08-28)
Re: MIPS optimizing compiler cfc@world.std.com (1997-08-30)
Re: MIPS optimizing compiler simg@netcom.com (1997-08-30)
Re: MIPS optimizing compiler fjh@mundook.cs.mu.OZ.AU (1997-09-03)
Re: MIPS optimizing compiler robert.wilson@Eng.Sun.COM (Bob Wilson) (1997-09-07)
| List of all articles for this month |

From: cfc@world.std.com (Chris F Clark)
Newsgroups: comp.compilers
Date: 30 Aug 1997 00:49:24 -0400
Organization: The World Public Access UNIX, Brookline, MA
References: 97-08-079
Keywords: linker

The linker used for that optimizing compiler was not a normal linker
in that it did not work with .o (object) files. Instead, at the
highest level of optimization the compiler left its internal files
produced by the front-ends around in place of object code. These were
called ucode files (as ucode was the intermediate language used by the
compilers).


The special linker (uld) operated on the ucode files resolving
internal cross-references and the ucode files were concatenated as if
the entire program was the input to one front-end. There was also a
phase (umerge) which did inlining on procedures. At this point the
normal optimizer and code generator was run on the merged ucode file,
followed by the normal linker to bring in any .o files which needed to
linked.


BTW, the same technology was used in the Digital Unix compilers for a
while, which is where I worked on it. To my knowledge those compilers
have been retired at DEC (and SGI has also moved to a new compiler
suite).


Hope this helps,
-Chris


*****************************************************************************
Chris Clark Internet : compres@world.std.com
Compiler Resources, Inc. CompuServe : 74252,1375
3 Proctor Street voice : (508) 435-5016
Hopkinton, MA 01748 USA fax : (508) 435-4847 (24 hours)
--


Post a followup to this message

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