Aucbvax.6799 net.bugs.2bsd utzoo!decvax!ucbvax!dove@mit-dspg@mit-mc Mon Apr 19 15:57:15 1982 vax compilers From: dove at mit-dspg at mit-mc I just checked out the floating point speed of a local vax (mit-vx). To do so I compiled the following program: main() { register double z=0; register long i=100000; while(i-->0) { z += 1; z += 1; z += 1; z += 1; z += 1; z += 1; z += 1; z += 1; z += 1; z += 1; } } The vax pcc compiler failed to use register arithmetic to do the floating point adds, used seperate storage for each constant and didn't use the add one branch less than or equal instruction to implement the loop. A similar VMS fortran program also used seperate storage for the constants but did use register arithmetic and AOBLEQ. Unix f77 didn't use register arithmetic, but did use an efficient loop instruction. Will unix pcc and f77 ever properly use the vax registers and language support instructions? Does the "new" f77 at berkeley improve upon the old one a lot in terms of code and compile time? ----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen of http://communication.ucsd.edu/A-News/ This Usenet Oldnews Archive article may be copied and distributed freely, provided: 1. There is no money collected for the text(s) of the articles. 2. The following notice remains appended to each copy: The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.