Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-12-10 Thread Yangfei (Felix)
> > --- gcc/config/aarch64/aarch64.c(revision 217394) > > +++ gcc/config/aarch64/aarch64.c(working copy) > > @@ -10224,6 +10224,9 @@ aarch64_use_by_pieces_infrastructure_p > (unsigned i > > #define TARGET_USE_BY_PIECES_INFRASTRUCTURE_P \ > > aarch64_use_by_pieces_infrastructure_p > >

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-12-09 Thread Tejas Belagod
On 18/11/14 11:28, Yangfei (Felix) wrote: On 11/18/2014 11:48 AM, Yangfei (Felix) wrote: +(define_expand "doloop_end" + [(use (match_operand 0 "" "")) ; loop pseudo + (use (match_operand 1 "" ""))] ; label + "" +{ + /* Currently SMS relies on the do-loop pattern to recognize loops

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Marcus Shawcroft
On 18 November 2014 11:28, Yangfei (Felix) wrote: > Yeah, that's a good idea. See my updated patch :-) > > > Index: gcc/ChangeLog > === > --- gcc/ChangeLog (revision 217394) > +++ gcc/ChangeLog (working copy) > @@ -1,3 +

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Richard Henderson
On 11/18/2014 12:28 PM, Yangfei (Felix) wrote: > +2014-11-13 Felix Yang > + > + * config/aarch64/aarch64.c (doloop_end): New pattern. > + * config/aarch64/aarch64.md (TARGET_CAN_USE_DOLOOP_P): Implement. Looks good to me. I'll leave it for aarch64 maintainers for final approval. r~

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Yangfei (Felix)
> On 11/18/2014 11:48 AM, Yangfei (Felix) wrote: > > +(define_expand "doloop_end" > > + [(use (match_operand 0 "" "")) ; loop pseudo > > + (use (match_operand 1 "" ""))] ; label > > + "" > > +{ > > + /* Currently SMS relies on the do-loop pattern to recognize loops > > + where (1)

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Richard Henderson
On 11/18/2014 11:48 AM, Yangfei (Felix) wrote: > +(define_expand "doloop_end" > + [(use (match_operand 0 "" "")) ; loop pseudo > + (use (match_operand 1 "" ""))] ; label > + "" > +{ > + /* Currently SMS relies on the do-loop pattern to recognize loops > + where (1) the control par

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Yangfei (Felix)
Yes, major code is borrowed from ARM port with the expected mode of loop pseudo changed to DImode. The function loop_canon_p called in sms_schedule can make sure that SMS is only performed for innermost loops. But I think it's a good idea to implement the TARGET_CAN_USE_DOLOOP_P hook here. Se

Re: [PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-18 Thread Marcus Shawcroft
On 17 November 2014 07:59, Yangfei (Felix) wrote: >> +2014-11-13 Felix Yang >> + >> + * config/aarch64/aarch64.md (doloop_end): New pattern. >> + This looks like a straight copy of the ARM code, but without the TARGET_CAN_USE_DOLOOP_P definition. If the reason for including this code is

[PING ^ 3][PATCH, AArch64] Add doloop_end pattern for -fmodulo-sched

2014-11-17 Thread Yangfei (Felix)
PING? Is it OK for me to apply this patch? Thanks. > > > On 11/12/2014 11:01 AM, Yangfei (Felix) wrote: > > > +(define_expand "doloop_end" > > >> + [(use (match_operand 0 "" "")) ; loop pseudo > > >> + (use (match_operand 1 "" ""))] ; label > > >> + "" > > >> + " > > >> +{ > > >