Re: Should "restrictness" be preserved over function linling and casting?

2010-11-19 Thread Ian Lance Taylor
"Bingfeng Mei" writes: > Currently, trunk GCC generates following code (compile with > -fschedule-insns -O2). Obviously, restrict is effective here > even with inlining > I am not very good at reading standard text. Does this > behaviour conform to standard? Yes. The restrict qualifier promise

Re: Should "restrictness" be preserved over function linling and casting?

2010-11-19 Thread Xinliang David Li
A good optimizing compiler tries hard to preserve restrict aliasing of a callee function in its inline instance, and this is usually a hard problem because the use of restrict qualified pointers are now mixed with the caller context. In many cases, the compiler may choose not to inline the functio

Should "restrictness" be preserved over function linling and casting?

2010-11-19 Thread Bingfeng Mei
Hello, I have been struggling with GCC's restrict implementation. One question is: should "restrictness" be preserved over function inlining? For example, in the following code: static int store_int (int *a, int data) { *a = data; } void foo (int * __restrict a, int *__restrict b) { int da