Article View: comp.std.c
Article #4357noalias
From: Erik Corry
Date: Mon, 13 Nov 1995 22:15
Date: Mon, 13 Nov 1995 22:15
19 lines
1194 bytes
1194 bytes
The major reason that C can never be as fast as Fortran is that a Fortran function can assume that two arrays are not aliases for each other, whereas C must assume that two arrays/pointers could be aliases. This prevents a lot of parallelising and loop-unrolling optimisations from being legal in C. There was a proposed 'noalias' keyword for C (or was it C++?) that was withdrawn, apparently after Dennis Ritchie more-or-less vetoed it. This would have provided a partial solution to the problem in that it would have been possible for the programmer to explicitly indicate that two parameters were not to be aliases for the same array/variable. Does anyone know where I can read up on the exact reasons for this decision, and any work that is currently going on in the same area. -- Erik Corry ehcorry@inet.uni-c.dk
Technical Details
Message-ID:
<DI05tq.Ht7@kroete2.freinet.de>Path:
arc1-ca.pugleaf.net!news.uni-c.dk!kroete2!not-for-mailShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!news.uni-c.dk!kroete2!not-for-mail From: erik@kroete2.freinet.de (Erik Corry) Newsgroups: comp.std.c Subject: noalias Date: Mon, 13 Nov 1995 22:15:25 GMT Organization: Home Sender: news@kroete2.freinet.de (news) Message-ID: <DI05tq.Ht7@kroete2.freinet.de> NNTP-Posting-Host: arhppp8.uni-c.dk X-Newsreader: TIN [UNIX 1.3 950515BETA PL0]