Date: Wed, 22 Apr 2009 13:59:12 +0200
From: Terje Mathisen <"terje.mathisen at tmsw.no">
Subject: Re: The coming death of all RISC chips.
> It is invisible aliasing that prevents common subexpression
> elimination, loop invariant hoisting, and enregistering values
> (off hand, I can't think of anything else it affects).
> With aliasing removed, these can be maximized since actual,
> intentional, aliasing should be quite rare.
Aliasing is indeed a huge problem, and I really think Fortran is far
better than C here: If you actually do need to alias something, then
that needs to have a hugely obvious flag around it.
In my own code I sometimes copy variables explicitly into local
(stack/auto) storage (and write them back afterwards, if needed), just
to make it absolutely clear that none of these can ever alias anything.
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"