Re: [PATCH]Enable elimination of IV use with unsigned type candidate

2014-07-03 Thread Bin.Cheng
On Tue, Jul 1, 2014 at 10:32 AM, Bin.Cheng wrote: > Sorry for this late reply, I spent some time in understanding the problem. > > On Tue, Jun 24, 2014 at 12:36 PM, Richard Biener > wrote: >> On Mon, Jun 23, 2014 at 11:49 AM, Bin Cheng wrote: > >>> expressions. It's possible to have iv_eliminat

Re: [PATCH]Enable elimination of IV use with unsigned type candidate

2014-07-01 Thread Bin.Cheng
On Tue, Jul 1, 2014 at 10:32 AM, Bin.Cheng wrote: > Sorry for this late reply, I spent some time in understanding the problem. > > On Tue, Jun 24, 2014 at 12:36 PM, Richard Biener > wrote: >> On Mon, Jun 23, 2014 at 11:49 AM, Bin Cheng wrote: > >>> expressions. It's possible to have iv_eliminat

Re: [PATCH]Enable elimination of IV use with unsigned type candidate

2014-07-01 Thread Bin.Cheng
Sorry for this late reply, I spent some time in understanding the problem. On Tue, Jun 24, 2014 at 12:36 PM, Richard Biener wrote: > On Mon, Jun 23, 2014 at 11:49 AM, Bin Cheng wrote: >> expressions. It's possible to have iv_elimination_compare_lt to do some >> undo transformation on may_be_ze

Re: [PATCH]Enable elimination of IV use with unsigned type candidate

2014-06-24 Thread Richard Biener
On Mon, Jun 23, 2014 at 11:49 AM, Bin Cheng wrote: > Hi, > For below simplified case: > > #define LEN (32000) > __attribute__((aligned(16))) float a[LEN],b[LEN]; > > int foo (int M) > { > for (int i = 0; i < M; i++) > a[i+M] = a[i] + b[i]; > } > > Compiling it with command like: > $ aarch64-

[PATCH]Enable elimination of IV use with unsigned type candidate

2014-06-23 Thread Bin Cheng
Hi, For below simplified case: #define LEN (32000) __attribute__((aligned(16))) float a[LEN],b[LEN]; int foo (int M) { for (int i = 0; i < M; i++) a[i+M] = a[i] + b[i]; } Compiling it with command like: $ aarch64-elf-gcc -O3 -S foo.c -o foo.S -std=c99 The assembly code of vectorized loop