Path: utzoo!mnetor!uunet!husc6!hao!ames!necntc!ima!johnl From: grunwald@m.cs.uiuc.edu (Dirk Grunwald) Newsgroups: comp.compilers Subject: Questions of optimizations Message-ID: <783@ima.ISC.COM> Date: 11 Dec 87 05:28:53 GMT Sender: johnl@ima.ISC.COM Reply-To: grunwald@m.cs.uiuc.edu (Dirk Grunwald) Lines: 37 Approved: compilers@ima.UUCP Here's a topic to stir things up. I've taking a seminar on optimizations this semester. Recently, we read the papers from WRL concerning link-time register allocation. In the paper (it appears in the last ASPLOS, I think?) Wahl says that link time register allocation allows for better global register analysis, which is rather an obvious statement, since you're linking the parts into the global whole. Are there compilers other than the DEC-WRL suite which compile to a link time form and do optimizations at link time? Any references? There would seem to be a large number of global optimizations available at that time: alias analysis, register allocation, in-line expansion, parallelism detection, etc. Realisticlly, it would also favour the edit-compile cycle. With the optimizations deferred until the later stages of the compile, the lexical and syntactic analysis would be faster. The size of intermediate files might increase a great deal, but the performance gains would certainly be worthwhile. dirk grunwald univ of illinois [A recent message mentioned that minix uses slightly squashed assembler for its object format. A message a few months ago in the discussion of writing a machine independent C compiler that compiled to bytecodes talked about a commercial compiler system from way back that used what we would now consider to be an intermediate compiler code as its object form. I'd be interested to hear how much slower this makes a linker, considering that most linkers are none too fast now. And is there any way to reconcile this with things like shared libraries and Multics-style dynamic linking? -John] -- Send compilers articles to ima!compilers or, in a pinch, to Levine@YALE.ARPA Plausible paths are { ihnp4 | decvax | cbosgd | harvard | yale | bbn}!ima Please send responses to the originator of the message -- I cannot forward mail accidentally sent back to compilers. Meta-mail to ima!compilers-request