Path: utzoo!attcan!uunet!mcsun!ukc!inmos!conor@penguin.inmos.co.uk From: conor@penguin.inmos.co.uk (Conor O'Neill) Newsgroups: comp.lang.misc Subject: Re: Aggressive optimization Message-ID: <12175@ganymede.inmos.co.uk> Date: 29 Oct 90 13:51:39 GMT References: <2060@aber-cs.UUCP> <65592@lanl.gov> <2677@l.cc.purdue.edu> Sender: news@inmos.co.uk Reply-To: conor@inmos.co.uk (Conor O'Neill) Organization: INMOS Limited, Bristol, UK. Lines: 25 In article meissner@osf.org (Michael Meissner) writes: >| > Assembly languages are the only ones I know of in which _no_ >| > operational freedom is granted to the 'compiler'. >| >| It is possible to allow an assember to rearrange code for optimization. > >And in fact on systems that use the MIPS chips (MIPSco, SGI, >DECstation), the assemblers already do this, primarily to fill delay >slots and such. If I really need to know about what the assembler did >behind my back, I have to disassemble the object module. When I was first taught any computer science, I was taught that an assembler performed a one-to-one translation of assembly language mnemonics to machine instructions. I like, and can understand, that definition. I don't consider instruction scheduling, and the removal of no-ops in the delay slots, as "a one-to-one translation". Am I the only programmer who wishes that MIPS hadn't "corrupted" the word "assembler", but had used some other term instead? --- Conor O'Neill, Software Group, INMOS Ltd., UK. UK: conor@inmos.co.uk US: conor@inmos.com "It's state-of-the-art" "But it doesn't work!" "That is the state-of-the-art".