Re: [PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-17 Thread Segher Boessenkool
Hi! As an aside... On Mon, Aug 16, 2021 at 03:46:12AM -0500, Xiong Hu Luo wrote: > --- /dev/null > +++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-lim-19.c > --- a/gcc/tree-ssa-loop-im.c > +++ b/gcc/tree-ssa-loop-im.c You can make a saner order for your diffs by putting the testsuite changes after the

Re: [PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-17 Thread Richard Biener via Gcc-patches
On Tue, 17 Aug 2021, Xionghu Luo wrote: > Hi, > > On 2021/8/16 19:46, Richard Biener wrote: > > On Mon, 16 Aug 2021, Xiong Hu Luo wrote: > > > >> It seems to me that ALWAYS_EXECUTED_IN is not computed correctly for > >> nested loops. inn_loop is updated to inner loop, so it need be restored > >

Re: [PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-16 Thread Xionghu Luo via Gcc-patches
On 2021/8/17 13:17, Xionghu Luo via Gcc-patches wrote: Hi, On 2021/8/16 19:46, Richard Biener wrote: On Mon, 16 Aug 2021, Xiong Hu Luo wrote: It seems to me that ALWAYS_EXECUTED_IN is not computed correctly for nested loops.  inn_loop is updated to inner loop, so it need be restored when e

Re: [PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-16 Thread Xionghu Luo via Gcc-patches
Hi, On 2021/8/16 19:46, Richard Biener wrote: On Mon, 16 Aug 2021, Xiong Hu Luo wrote: It seems to me that ALWAYS_EXECUTED_IN is not computed correctly for nested loops. inn_loop is updated to inner loop, so it need be restored when exiting from innermost loop. With this patch, the store inst

Re: [PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-16 Thread Richard Biener via Gcc-patches
On Mon, 16 Aug 2021, Xiong Hu Luo wrote: > It seems to me that ALWAYS_EXECUTED_IN is not computed correctly for > nested loops. inn_loop is updated to inner loop, so it need be restored > when exiting from innermost loop. With this patch, the store instruction > in outer loop could also be moved

[PATCH] Fix incorrect computation in fill_always_executed_in_1

2021-08-16 Thread Xiong Hu Luo via Gcc-patches
It seems to me that ALWAYS_EXECUTED_IN is not computed correctly for nested loops. inn_loop is updated to inner loop, so it need be restored when exiting from innermost loop. With this patch, the store instruction in outer loop could also be moved out of outer loop by store motion. Any comments?