Path: utzoo!mnetor!uunet!husc6!necntc!celtics!roger From: roger@celtics.UUCP (Roger B.A. Klorese) Newsgroups: comp.lang.c Subject: Re: some objections to 'noalias' Message-ID: <1912@celtics.UUCP> Date: 28 Dec 87 20:21:58 GMT References: <485@cresswell.quintus.UUCP> <1453@cuuxb.ATT.COM> <492@cresswell.quintus.UUCP> Reply-To: roger@celtics.UUCP (Roger B.A. Klorese) Organization: CELERITY (Northeast Area), Framingham, MA Lines: 28 In article <492@cresswell.quintus.UUCP> ok@quintus.UUCP (Richard A. O'Keefe) writes: >I would claim that aliasing is a worse problem in Fortran than in C. Probably true. >So my question: if people care about optimising Fortran (and they DO) >and they care about writing correct programs in Fortran (and they DO) >and if aliasing is a problem in Fortran (and I've just shown that it >IS), what is so special about C that it needs a 'noalias' declaration? Because many people have *already* extended their FORTRAN compilers to handle aliasing properly. Quoting from the Celerity Computing Tools and Applications Reference Manual, Volume III, Book 2 (Languages, Kernel), which is Copyright 1986 Celerity Computing, on page 1-14: "However, even programs that contain hidden aliasing can be safely optimized if the optimization control '-Oc s' is specified. It causes the optimizer to refrain from placing in registers any expressions that depend on common-block variables or incoming parameters." When parameters and common block allocations are eliminated from consideration, and proper subscripting is observed, FORTRAN aliases should all be detectable. (Any cases left out?) -- ///==\\ (Your message here...) /// Roger B.A. Klorese, CELERITY (Northeast Area) \\\ 40 Speen St., Framingham, MA 01701 +1 617 872-1552 \\\==// celtics!roger@necntc.nec.com - necntc!celtics!roger