Re: Why can't copy renaming capture this assignment?

2012-04-04 Thread Richard Guenther
On Wed, Apr 4, 2012 at 1:27 AM, Jiangning Liu liujiangni...@gmail.com wrote: So I suppose for this specific case a pass that performs type promotion/demotion (as was discussed repeatedly) would be a better thing, and an enablement of trivial redundancy removal. This case is from a real 

Re: Why can't copy renaming capture this assignment?

2012-04-03 Thread Richard Guenther
2012/4/3 Jiangning Liu liujiangni...@gmail.com: 在 2012-4-2 下午4:37,Richard Guenther richard.guent...@gmail.com写道: On Sat, Mar 31, 2012 at 6:23 AM, Jiangning Liu jiangning@arm.com wrote: Hi, For this small case, char garr[100]; void f(void) { unsigned short h, s;

Re: Why can't copy renaming capture this assignment?

2012-04-02 Thread Richard Guenther
On Sat, Mar 31, 2012 at 6:23 AM, Jiangning Liu jiangning@arm.com wrote: Hi, For this small case, char garr[100]; void f(void) {        unsigned short h, s;        s = 20;        for (h = 1; h (s-1); h++)        {                garr[h] = 0;        } } After copyrename3, we

Why can't copy renaming capture this assignment?

2012-03-30 Thread Jiangning Liu
Hi, For this small case, char garr[100]; void f(void) { unsigned short h, s; s = 20; for (h = 1; h (s-1); h++) { garr[h] = 0; } } After copyrename3, we have the following dump, f () { short unsigned int h; int D.4066; bb 2: