Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!usc!elroy.jpl.nasa.gov!decwrl!deccrl!news.crl.dec.com!jg From: jg@crl.dec.com (Jim Gettys) Newsgroups: comp.unix.ultrix Subject: Re: New RISC compilers???? Message-ID: <1991Mar15.162559.3386@crl.dec.com> Date: 15 Mar 91 16:25:59 GMT References: <15530012@hpdmd48.boi.hp.com> <1991Mar13.031200.29836@crl.dec.com> <19805@cbmvax.commodore.com> <1991Mar13.125214.7403@crl.dec.com> <19831@cbmvax.commodore.com> Sender: news@crl.dec.com (USENET News System) Organization: DEC Cambridge Research Lab Lines: 60 Hopefully this will clear things up about the new compilers. Thanks to Kent Glossop of the GEM group who sent this to me for redistribution. - Jim Gettys ---------------------------------------- DEC FORTRAN & DEC C This is the situation with the 2 new compilers: Previous numbers: FORTRAN: MIPS f77 front end MIPS back end called "FORTRAN for RISC V2.n" C: MIPS C front end MIPS back end called "C for RISC" or something like that New numbers: FORTRAN: DEC FORTRAN front end (heavily modified VAX FORTRAN source to have both good compatibility with f77 compilers and with VAX FORTRAN using "-vms") GEM (DEC developed) back end called "DEC FORTRAN V3.0" C: New DEC-developed ANSI-C compliant "DEC C" front end, which has K&R and PCC modes Currently uses the MIPS back end called "DEC C V1.0" In general, "user-visible" properties (source language, etc.) are the property of the "front end", which generates an intermediate language. The optimization is performed by the back end. What happened is: - The GEM back end does quite a bit better than the MIPSCO back end for a lot of FORTRAN code. In the case of the SPEC benchmarks, this is something like 14% on a DS5000. Reports on application speed ups are generally in the 0-25% range, though there have been a few more spectacular ones.) - The current DEC C compiler uses the MIPSCO back end, which means that there isn't a significant difference in code quality between that compiler and the previous C compiler (though they use different versions of the "MIPSCO back end".) So, the summary is that the new FORTRAN compiler represents a significant change in optimization and code generation technology, while the C compiler is the same basic technology as the previous version. (The fact that the benchmarks happened to get a little slower with DEC C may be due to the slightly different IL it presumably generates compared to the old C front end. It might also be due to the interaction of some new optimizations, which sometimes happens with new releases of compilers.) Kent Glossop (a member of the GEM team...)