[llvm-commits] [llvm-gcc] llvm-gcc patch for PR1373 (review only)
clattner at apple.com
Mon Jun 25 22:51:19 PDT 2007
On Jun 25, 2007, at 8:57 AM, Zhou Sheng wrote:
> Hi All,
> Here is the llvm-gcc patch for PR1373. It makes llvm-gcc to emit
> noalias parameter attribute as well as noalias intrinsic. Note this
> patch is just for review. Please give me some suggestion to improve
> it. Thanks.
The patch looks good. I'd suggest splitting it into two changes though:
First, introduce the parameter attribute. Your code to do this looks
good, but please add support for REFERENCE_TYPE as well (for c++
restrict references). When this goes in, basicaa can be enhanced to
use this info and we can get some idea how well this works.
As a second step, the noalias intrinsic can be added. This is more
likely to disrupt code, and we'll have to closely monitor it when it
goes it (we don't want it to block mem2reg etc). In practice, we'll
want to add the intrinsic to llvm, then start updating important
optimizations to see through it (e.g. mem2reg and scalarrepl), then
turn it on in the front-end.
If you send a patch for just adding restrict support for arguments,
that handles pointers and references, I'd be happy to check it in.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-commits