Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!husc6!rutgers!rochester!pt.cs.cmu.edu!fas.ri.cmu.edu!schmitz From: schmitz@fas.ri.cmu.edu (Donald Schmitz) Newsgroups: comp.arch Subject: SUN procedure inlining(was i860 Dhrystones) Message-ID: <4614@pt.cs.cmu.edu> Date: 31 Mar 89 15:50:06 GMT References: <39388@oliveb.olivetti.com> <15475@winchester.mips.COM> <95013@sun.Eng.Sun.COM> <13641@jumbo.dec.com> <95215@sun.Eng.Sun.COM> Distribution: na Organization: Carnegie-Mellon University, CS/RI Lines: 21 Keywords: In article david@sun.com writes: >In article sclafani@jumbo.dec.com (Michael Sclafani) writes: >>Results for the Sun-3/60 are not reported because the data in >>[Presentation on Benchmarks given at Sun User Group Conference, Dec 5-7, >>1988 by Sun Microsystems, Inc.] uses compiler optimization level 4 which >>employs procedure inlining. > >FYI, this is incorrect. Current Sun C compilers do not perform procedure >inlining at any optimization level. > >David DiGiacomo, Sun Microsystems, Mt. View, CA sun!david david@sun.com Maybe you should look again - our SUN3 C compiler has a limited, but occasionally useful procedure inline facility - and the standard inline files have 1986 SUN copywrite notices in them. Its actually pretty crude, you compile the source with a .il file (assembly code with a few special directives), and all of the original jsr's are macro replaced with the assembler for the routine. It doesn't inline argument passing, but it does eliminate the jsr/rts overhead. Don Schmitz --