Hi!
On Wed, 25 Nov 2015 11:43:14 +0100 (CET), Richard Biener
wrote:
> On Tue, 24 Nov 2015, Tom de Vries wrote:
> > > [...]
> >
> > Reposting using the in_loop_pipeline style in pass_lim.
>
> Ok.
I merged trunk r230907 into gomp-4_0-branch in a very simplistic way,
On Tue, 24 Nov 2015, Tom de Vries wrote:
> On 24/11/15 15:33, Richard Biener wrote:
> > On Tue, 24 Nov 2015, Tom de Vries wrote:
> >
> > > On 24/11/15 14:13, Richard Biener wrote:
> > > > On Tue, 24 Nov 2015, Tom de Vries wrote:
> > > >
> > > > > > On 23/11/15 11:02, Richard Biener wrote:
> > >
On Tue, 24 Nov 2015, Tom de Vries wrote:
> On 23/11/15 11:02, Richard Biener wrote:
> > On Fri, 20 Nov 2015, Tom de Vries wrote:
> >
> > > On 20/11/15 14:29, Richard Biener wrote:
> > > > I agree it's somewhat of an odd behavior but all passes should
> > > > either be placed in a sub-pipeline
On Tue, 24 Nov 2015, Tom de Vries wrote:
> On 24/11/15 14:13, Richard Biener wrote:
> > On Tue, 24 Nov 2015, Tom de Vries wrote:
> >
> > > >On 23/11/15 11:02, Richard Biener wrote:
> > > > > >On Fri, 20 Nov 2015, Tom de Vries wrote:
> > > > > >
> > > > > > > >On 20/11/15 14:29, Richard Biener
On 24/11/15 15:33, Richard Biener wrote:
On Tue, 24 Nov 2015, Tom de Vries wrote:
On 24/11/15 14:13, Richard Biener wrote:
On Tue, 24 Nov 2015, Tom de Vries wrote:
On 23/11/15 11:02, Richard Biener wrote:
On Fri, 20 Nov 2015, Tom de Vries wrote:
On 20/11/15 14:29, Richard Biener wrote:
On 23/11/15 11:02, Richard Biener wrote:
On Fri, 20 Nov 2015, Tom de Vries wrote:
On 20/11/15 14:29, Richard Biener wrote:
I agree it's somewhat of an odd behavior but all passes should
either be placed in a sub-pipeline with an outer
loop_optimizer_init()/finalize () call or call both
On Tue, 24 Nov 2015, Tom de Vries wrote:
> On 23/11/15 11:02, Richard Biener wrote:
> > On Fri, 20 Nov 2015, Tom de Vries wrote:
> >
> > > On 20/11/15 14:29, Richard Biener wrote:
> > > > I agree it's somewhat of an odd behavior but all passes should
> > > > either be placed in a sub-pipeline
On 24/11/15 14:13, Richard Biener wrote:
On Tue, 24 Nov 2015, Tom de Vries wrote:
>On 23/11/15 11:02, Richard Biener wrote:
> >On Fri, 20 Nov 2015, Tom de Vries wrote:
> >
> > >On 20/11/15 14:29, Richard Biener wrote:
> > > >I agree it's somewhat of an odd behavior but all passes should
> >
On Sat, 21 Nov 2015, Tom de Vries wrote:
> On 20/11/15 11:28, Richard Biener wrote:
> > On Thu, 19 Nov 2015, Tom de Vries wrote:
> >
> > > >On 17/11/15 15:53, Tom de Vries wrote:
> > > > > > > >And the above LIM example
> > > > > > > >is none for why you need two LIM passes...
> > > > > >
> > >
On Fri, 20 Nov 2015, Tom de Vries wrote:
> On 20/11/15 14:29, Richard Biener wrote:
> > I agree it's somewhat of an odd behavior but all passes should
> > either be placed in a sub-pipeline with an outer
> > loop_optimizer_init()/finalize () call or call both themselves.
>
> Hmm, but adding
On 23/11/15 12:31, Richard Biener wrote:
From the dump below I understand you want no memory references in
> >the outer loop?
> >So the issue seems to be that store motion fails
> >to insert the preheader load / exit store to the outermost loop
> >possible and thus another LIM pass is needed to
On November 23, 2015 4:37:18 PM GMT+01:00, Tom de Vries
wrote:
>On 23/11/15 12:31, Richard Biener wrote:
From the dump below I understand you want no memory references in
> >the outer loop?
> >So the issue seems to be that store motion fails
> >to
On 20/11/15 11:28, Richard Biener wrote:
On Thu, 19 Nov 2015, Tom de Vries wrote:
>On 17/11/15 15:53, Tom de Vries wrote:
> > >And the above LIM example
> > >is none for why you need two LIM passes...
> >
> >Indeed. I'm planning a separate reply to explain in more detail the need
> >for the
On 20/11/15 11:37, Richard Biener wrote:
I'd rather make loop_optimizer_init do nothing
if requested flags are already set and no fixup is needed
Thus sth like
Index: gcc/loop-init.c
===
--- gcc/loop-init.c (revision
On Fri, 20 Nov 2015, Tom de Vries wrote:
> On 20/11/15 11:37, Richard Biener wrote:
> >I'd rather make loop_optimizer_init do nothing
> > if requested flags are already set and no fixup is needed
>
> > Thus sth like
> >
> > Index: gcc/loop-init.c
> >
On Thu, 19 Nov 2015, Tom de Vries wrote:
> On 17/11/15 15:53, Tom de Vries wrote:
> > > And the above LIM example
> > > is none for why you need two LIM passes...
> >
> > Indeed. I'm planning a separate reply to explain in more detail the need
> > for the two pass_lims.
>
> I.
>
> I managed to
On Thu, 19 Nov 2015, Tom de Vries wrote:
> On 16/11/15 13:45, Richard Biener wrote:
> > > I've eliminated all the uses for pass_tree_loop_init/pass_tree_loop_done
> > > in
> > > >the pass group. Instead, I've added conditional loop optimizer setup in:
> > > >- pass_lim and pass_scev_cprop (added
On 20/11/15 14:29, Richard Biener wrote:
I agree it's somewhat of an odd behavior but all passes should
either be placed in a sub-pipeline with an outer
loop_optimizer_init()/finalize () call or call both themselves.
Hmm, but adding loop_optimizer_finalize at the end of pass_lim breaks
the
On 16/11/15 13:45, Richard Biener wrote:
I've eliminated all the uses for pass_tree_loop_init/pass_tree_loop_done in
>the pass group. Instead, I've added conditional loop optimizer setup in:
>- pass_lim and pass_scev_cprop (added in this patch), and
Reposting the "Add pass_oacc_kernels pass
On November 18, 2015 9:30:23 AM GMT+01:00, Richard Biener
wrote:
>On Tue, 17 Nov 2015, Tom de Vries wrote:
>
>> On 17/11/15 16:18, Richard Biener wrote:
>> > > > IMHO autopar needs to handle induction itself.
>> > > >
>> > > >I'm not sure what you mean. Could you elaborate?
On Tue, 17 Nov 2015, Tom de Vries wrote:
> On 17/11/15 16:18, Richard Biener wrote:
> > > > IMHO autopar needs to handle induction itself.
> > > >
> > > >I'm not sure what you mean. Could you elaborate? Autopar handles
> > > induction
> > > >variables, but it doesn't handle exit phis reading the
On 17/11/15 15:53, Tom de Vries wrote:
And the above LIM example
is none for why you need two LIM passes...
Indeed. I'm planning a separate reply to explain in more detail the need
for the two pass_lims.
I.
I managed to get rid of the two pass_lims for the motivating example
that I used
On 17/11/15 11:05, Richard Biener wrote:
On Tue, Nov 17, 2015 at 12:20 AM, Tom de Vries wrote:
On 16/11/15 13:45, Richard Biener wrote:
+ NEXT_PASS (pass_scev_cprop);
What's that for? It's supposed to help removing loops - I don't
expect kernels to
On Tue, 17 Nov 2015, Tom de Vries wrote:
> On 17/11/15 11:05, Richard Biener wrote:
> > On Tue, Nov 17, 2015 at 12:20 AM, Tom de Vries
> > wrote:
> > > On 16/11/15 13:45, Richard Biener wrote:
> > > > > >
> > > > > > + NEXT_PASS (pass_scev_cprop);
> > > > > >
On 17/11/15 16:18, Richard Biener wrote:
IMHO autopar needs to handle induction itself.
>
>I'm not sure what you mean. Could you elaborate? Autopar handles induction
>variables, but it doesn't handle exit phis reading the final value of the
>induction variable. Is that what you want fixed?
On Tue, Nov 17, 2015 at 12:20 AM, Tom de Vries wrote:
> On 16/11/15 13:45, Richard Biener wrote:
+ NEXT_PASS (pass_scev_cprop);
> >
> >What's that for? It's supposed to help removing loops - I don't
> >expect kernels to vanish.
>>>
>>>
On Mon, 16 Nov 2015, Tom de Vries wrote:
> On 11/11/15 12:02, Richard Biener wrote:
> > On Mon, 9 Nov 2015, Tom de Vries wrote:
> >
> > > On 09/11/15 16:35, Tom de Vries wrote:
> > > > Hi,
> > > >
> > > > this patch series for stage1 trunk adds support to:
> > > > - parallelize oacc kernels
On 16/11/15 13:45, Richard Biener wrote:
+ NEXT_PASS (pass_scev_cprop);
> >
> >What's that for? It's supposed to help removing loops - I don't
> >expect kernels to vanish.
>
>I'm using pass_scev_cprop for the "final value replacement" functionality.
>Added comment.
That
On 11/11/15 12:02, Richard Biener wrote:
On Mon, 9 Nov 2015, Tom de Vries wrote:
On 09/11/15 16:35, Tom de Vries wrote:
Hi,
this patch series for stage1 trunk adds support to:
- parallelize oacc kernels regions using parloops, and
- map the loops onto the oacc gang dimension.
The patch
On Mon, 9 Nov 2015, Tom de Vries wrote:
> On 09/11/15 16:35, Tom de Vries wrote:
> > Hi,
> >
> > this patch series for stage1 trunk adds support to:
> > - parallelize oacc kernels regions using parloops, and
> > - map the loops onto the oacc gang dimension.
> >
> > The patch series contains
On 09/11/15 16:35, Tom de Vries wrote:
Hi,
this patch series for stage1 trunk adds support to:
- parallelize oacc kernels regions using parloops, and
- map the loops onto the oacc gang dimension.
The patch series contains these patches:
1Insert new exit block only when needed in
31 matches
Mail list logo