Re: Help on loop peeling

2009-08-17 Thread Eric Fisher
2009/8/15 Sebastian Pop : > You should put a TODO_update_ssa in the flags of prefetching pass. > With the attached patch I don't see an error. Thanks. Finally, I figure out that it's because that after copying the loop, I should have created a preheader to ensure that new_loop's preheader has onl

Re: Help on loop peeling

2009-08-14 Thread Sebastian Pop
Hi, > Seems that use info is not updated. > You should put a TODO_update_ssa in the flags of prefetching pass. With the attached patch I don't see an error. Also, why don't you use trunk for your developments? Sebastian diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index 1d2e69a..1320b5a 10064

Re: Help on loop peeling

2009-08-14 Thread Eric Fisher
2009/8/13 Sebastian Pop : > Could you please send the patch you are working on, together with > a reduced testcase?  This could help to reproduce the error. Thanks. I put the patch and a test below. The patch is based on 4.4.0. It's just a toy, I haven't a nice design for now. Actually, first_n

Re: Help on loop peeling

2009-08-13 Thread Richard Guenther
On Thu, Aug 13, 2009 at 4:41 PM, Sebastian Pop wrote: > Hi, > > On Thu, Aug 13, 2009 at 04:02, Eric Fisher wrote: >> The error is reported in build2_stat, by >> >> gcc_assert (POINTER_TYPE_P (tt) && POINTER_TYPE_P (TREE_TYPE (arg0)) >>                && INTEGRAL_TYPE_P (TREE_TYPE (arg1)) >>        

Re: Help on loop peeling

2009-08-13 Thread Sebastian Pop
Hi, On Thu, Aug 13, 2009 at 04:02, Eric Fisher wrote: > The error is reported in build2_stat, by > > gcc_assert (POINTER_TYPE_P (tt) && POINTER_TYPE_P (TREE_TYPE (arg0)) >                && INTEGRAL_TYPE_P (TREE_TYPE (arg1)) >                && useless_type_conversion_p (sizetype, TREE_TYPE (arg1)

Help on loop peeling

2009-08-13 Thread Eric Fisher
Hi, I'm implementing a loop peeling function used in tree-ssa-loop-prefetch.c according to the following comment, /* Step 5: unroll the loop. TODO -- peeling of first and last few iterations so that we do not issue superfluous prefetches. */ I take the functions slpeel_* in tree-vercteriz