Re: SLS Mitigation patches backported for GCC9

2020-11-12 Thread Sebastian Pop via Gcc-patches
Hi, could the SLS Mitigation patches be back-ported to the gcc-8 branch? https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=dc586a74922 aarch64: Introduce SLS mitigation for RET and BR instructions https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=20da13e395b aarch64: New Straight Line

Re: [gcc r9-8794] aarch64: Clear canary value after stack_protect_test [PR96191]

2020-11-12 Thread Sebastian Pop via Gcc-patches
Hi, On Fri, Aug 7, 2020 at 6:18 AM Richard Sandiford wrote: > > https://gcc.gnu.org/g:5380912a17ea09a8996720fb62b1a70c16c8f9f2 > > commit r9-8794-g5380912a17ea09a8996720fb62b1a70c16c8f9f2 > Author: Richard Sandiford > Date: Fri Aug 7 12:17:37 2020 +0100 could you please also apply this

Re: [PATCH][GRAPHITE] Consistently use region analysis

2017-10-14 Thread Sebastian Pop
On Fri, Oct 13, 2017 at 8:02 AM, Richard Biener wrote: > > Now that SCEV instantiation handles regions properly (see hunk below > for a minor fix) we can use it consistently from GRAPHITE and thus > simplify scalar_evolution_in_region greatly. > > Bootstrap and regtest running

Re: [PATCH][GRAPHITE] Fix PR82525

2017-10-12 Thread Sebastian Pop
On Oct 12, 2017 4:36 AM, "Richard Biener" wrote: The following avoids code-generation errors for modulo operations resulting from our own constraints ending up as no-ops because the type we code-generate in already imposes the modulo operation. For the case in SPEC 2k6

Re: [PATCH][GRAPHITE] Fix PR69728 in "another" way

2017-10-12 Thread Sebastian Pop
On Oct 12, 2017 9:08 AM, "Richard Biener" wrote: I made scheduling to fail when we end up with an empty domain but as I forgot to actually check the return value of build_original_schedule the fix was equivalent to just doing nothing to the schedule when it has an empty

Re: [PATCH][GRAPHITE] Lift some IV restrictions

2017-10-12 Thread Sebastian Pop
On Oct 12, 2017 9:29 AM, "Richard Biener" wrote: The type check seems premature (we're checking CHRECs already) and we certainly can handle POINTER IVs just fine. Bootstrap / regtest running on x86_64-unknown-linux-gnu. SPEC CPU 2k6 sees ~100 more loop nest optimizations

Re: [PATCH][GRAPHITE] Fix PR82451 (and PR82355 in a different way)

2017-10-12 Thread Sebastian Pop
On Oct 11, 2017 9:43 AM, "Richard Biener" wrote: For PR82355 I introduced a fake dimension to ISL to allow CHRECs having an evolution in a loop that isn't fully part of the SESE region we are processing. That was easier than fending off those CHRECs (without simply giving up

Re: [PATCH][GRAPHITE] Fix PR82449

2017-10-11 Thread Sebastian Pop
On Oct 9, 2017 8:48 AM, "Richard Biener" <rguent...@suse.de> wrote: On Mon, 9 Oct 2017, Richard Biener wrote: > On Fri, 6 Oct 2017, Sebastian Pop wrote: > > > On Fri, Oct 6, 2017 at 8:33 AM, Richard Biener <rguent...@suse.de> wrote: > > >

Re: [PATCH][GRAPHITE] Fix PR82449

2017-10-06 Thread Sebastian Pop
On Fri, Oct 6, 2017 at 8:33 AM, Richard Biener <rguent...@suse.de> wrote: > On Fri, 6 Oct 2017, Sebastian Pop wrote: > > > On Fri, Oct 6, 2017 at 6:56 AM, Richard Biener <rguent...@suse.de> > wrote: > > > > > > > > The following fences off

Re: [PATCH][GRAPHITE] Fix PR82449

2017-10-06 Thread Sebastian Pop
On Fri, Oct 6, 2017 at 6:56 AM, Richard Biener wrote: > > The following fences off a few more SCEVs through scev_analyzable_p given > at the end we need those pass chrec_apply when getting a rename through > SCEV. > > The SCEV in question is > > {(integer(kind=4)) {0, +, {1,

Re: [PATCH] [graphite] translate reads and writes in a single traversal of memory ops

2017-10-06 Thread Sebastian Pop
On Fri, Oct 6, 2017 at 6:27 AM, Richard Biener wrote: > > > Richard, could you please commit this patch, as I will need to figure out > > why my > > ssh keys don't let me to commit the code. I will probably need to update > > the key. > > Done. You probably still

Re: [PATCH][GRAPHITE] Rewrite PHI handling in code-gen

2017-10-05 Thread Sebastian Pop
On Thu, Oct 5, 2017 at 9:20 AM, Sebastian Pop <seb...@gmail.com> wrote: > > We also need to tag commutative and associative reductions > in the dependence graph. Now that the code generation will > nicely handle scalar dependences, we may want to add back > some of the

Re: [PATCH] [graphite] translate reads and writes in a single traversal of memory ops

2017-10-05 Thread Sebastian Pop
On Mon, Oct 2, 2017 at 4:18 AM, Richard Biener <richard.guent...@gmail.com> wrote: > On Mon, Oct 2, 2017 at 6:53 AM, Sebastian Pop <sebpop.l...@gmail.com> > wrote: > > The patch moves the code that translates reads and writes to isl > representation > >

Re: [PATCH] Fix typos in graphite testcases

2017-10-05 Thread Sebastian Pop
On Thu, Oct 5, 2017 at 2:44 AM, Richard Biener wrote: > Causing some UNRESOLVED. > > Committed. > Looks good. Thanks!

Re: [PATCH][GRAPHITE] Adjust CASE_CONVERT in extract_affine

2017-10-05 Thread Sebastian Pop
On Wed, Oct 4, 2017 at 2:45 AM, Richard Biener wrote: > > While my last change involving signed types was correct it wasn't optimal. > We can avoid the modulo constraints if the conversion is widening > (thus all values fit in the new type). > > Bootstrapped and tested on

Re: [PATCH][GRAPHITE] Rewrite PHI handling in code-gen

2017-10-05 Thread Sebastian Pop
On Thu, Oct 5, 2017 at 6:43 AM, Richard Biener wrote: > On Wed, 4 Oct 2017, Richard Biener wrote: > > > > > The following patch completely re-does PHI handling during > > code-generation. PHI handling is currently responsible for 99% of > > all code-generation issues. With

Re: [PATCH][GRAPHITE] Test for code generation errors

2017-10-02 Thread Sebastian Pop
On Mon, Oct 2, 2017 at 4:58 AM, Richard Biener wrote: > > The following patch adjust GRAPHITE testing to check that existing > code generation issues occur and makes code generation ICE with > -fchecking --param graphite-allow-codegen-errors=0. The param > is really a

[PATCH] [graphite] translate reads and writes in a single traversal of memory ops

2017-10-01 Thread Sebastian Pop
The patch moves the code that translates reads and writes to isl representation in a same loop. This is to avoid traversing the scop blocks and arrays with memory operations 3 times. * graphite-dependences.c (scop_get_reads): Move code to... (scop_get_must_writes): Move code

Re: isl scheduler and spatial locality (Re: [PATCH][GRAPHITE] More TLC)

2017-09-29 Thread Sebastian Pop
On Fri, Sep 29, 2017 at 2:37 PM, Sven Verdoolaege wrote: > [Sorry for the resend; I used the wrong email address to CC Alex] > > On Wed, Sep 27, 2017 at 02:18:51PM +0200, Richard Biener wrote: >> Ah, so I now see why we do not perform interchange on trivial cases like

Re: [PATCH][GRAPHITE] More TLC

2017-09-29 Thread Sebastian Pop
On Fri, Sep 29, 2017 at 6:17 AM, Richard Biener wrote: > I fixed the "hack patch" somewhat but realized it's not really possible > ATM to get back at this form because the array descriptor contains only > information to generate the linearized form. So while I get now correct

Re: [PATCH][GRAPHITE] Abstract away codegen_error setting

2017-09-29 Thread Sebastian Pop
On Fri, Sep 29, 2017 at 3:52 AM, Richard Biener wrote: > > This moves it to a function to make it easy to enable ICEin on them > in one place. > > Bootstrapped / tested on x86_64-unknown-linux-gnu, applied. > > Richard. > > 2017-09-29 Richard Biener > >

Re: [PATCH][GRAPHITE] Avoid CHRECs with evolution in loops not in the nest

2017-09-29 Thread Sebastian Pop
On Fri, Sep 29, 2017 at 6:18 AM, Richard Biener wrote: > The idea is that we'd transform the above to > basically wrap each SCOP inside a loop that doesn't iterate. > > Does this look reasonable? Yes, I think your solution looks good. > 2017-09-29 Richard Biener

Re: [PATCH][GRAPHITE] Make --param loop-block-tile-size=0 disable tiling

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 7:20 AM, Richard Biener wrote: > > Currently ISL aborts on this special value and for debugging (and > tuning?) it's nice to avoid all the clutter introduced by tiling. > > Committed as obvious. > > Richard. > > 2017-09-27 Richard Biener

Re: [PATCH][GRAPHITE] Allow --param graphite-max-arrays-per-scop=0

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 6:51 AM, Richard Biener wrote: > > The following is to allow making --param graphite-max-arrays-per-scop > unbounded. That's a little tricky because the bound is used when > computing "alias-sets" for scalar constraints. There's an easy way > out

Re: [PATCH][GRAPHITE] Remove another small quadraticness

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 6:48 AM, Richard Biener wrote: > > Turns out loop_nest recorded in scop-info isn't really necessary as > we can simply process parameters in loop bounds during the gather_bbs > walk where we encounter each loop (identified by its header) once. > > This

Re: [PATCH][GRAPHITE] Speedup SCOP detection some more, add region handling to domwalk

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 6:07 AM, Richard Biener wrote: > /* Maximal number of array references in a scop. */ > DEFPARAM (PARAM_GRAPHITE_MAX_ARRAYS_PER_SCOP, "graphite-max-arrays-per-scop", "maximum number of arrays per scop.", 100, 0, 0) Let's

Re: [PATCH][GRAPHITE] Speedup SCOP detection some more, add region handling to domwalk

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 6:07 AM, Richard Biener wrote: > > This removes another quadraticness from SCOP detection, gather_bbs > domwalk. This is done by enhancing domwalk to handle SEME regions > via a special return value from before_dom_children. > > With this I'm now

Re: [PATCH][GRAPHITE] Simplify SCOP detection

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 2:21 AM, Richard Biener <rguent...@suse.de> wrote: > On Tue, 26 Sep 2017, Sebastian Pop wrote: > >> On Tue, Sep 26, 2017 at 7:03 AM, Richard Biener <rguent...@suse.de> wrote: >> >> > >> > The following is the

Re: [PATCH][GRAPHITE] More TLC

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 9:33 AM, Richard Biener wrote: > Looks like even when hacking the Fortran FE to produce nested > ARRAY_REFs we run into the same issue for > > (gdb) p debug_data_reference (dr) > #(Data Ref: > # bb: 17 > # stmt: >

Re: [PATCH][GRAPHITE] More TLC

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 8:04 AM, Richard Biener wrote: > > Another thing I notice is that we don't handle the multi-dimensional > accesses the fortran frontend produces: > > (gdb) p debug_data_reference (dr) > #(Data Ref: > # bb: 18 > # stmt: _43 = *a_141(D)[_42]; > # ref:

Re: [PATCH][GRAPHITE] More TLC

2017-09-28 Thread Sebastian Pop
On Wed, Sep 27, 2017 at 7:18 AM, Richard Biener <rguent...@suse.de> wrote: > On Tue, 26 Sep 2017, Sebastian Pop wrote: > > > On Mon, Sep 25, 2017 at 8:12 AM, Richard Biener <rguent...@suse.de> > wrote: > > > > > On Fri, 22 Sep 2017, Sebastian Pop wrote:

Re: [PATCH][GRAPHITE] More TLC

2017-09-28 Thread Sebastian Pop
Hi skimo, On Tue, Sep 26, 2017 at 10:15 AM, Sven Verdoolaege < sven.verdoola...@gmail.com> wrote: > On Tue, Sep 26, 2017 at 09:19:50AM -0500, Sebastian Pop wrote: > > Sven, is there already a function that computes the sum of all > > strides in a proximity map? Maybe yo

Re: [PATCH][GRAPHITE] Simplify SCOP detection

2017-09-26 Thread Sebastian Pop
On Tue, Sep 26, 2017 at 7:03 AM, Richard Biener wrote: > > The following is the result of me trying to understand SCOP detection > and the validity checks spread around the machinery. It removes several > quadraticnesses by folding validity checks into >

Re: [PATCH][GRAPHITE] More TLC

2017-09-26 Thread Sebastian Pop
On Mon, Sep 25, 2017 at 8:12 AM, Richard Biener <rguent...@suse.de> wrote: > On Fri, 22 Sep 2017, Sebastian Pop wrote: > > > On Fri, Sep 22, 2017 at 8:03 AM, Richard Biener <rguent...@suse.de> > wrote: > > > > > > > > This simplifies canonicali

Re: [PATCH] Fix PR82321

2017-09-26 Thread Sebastian Pop
On Tue, Sep 26, 2017 at 6:02 AM, Richard Biener wrote: > > Latent, exposed by me removing the "redundant" > rewrite-into-loop-closed-ssa. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. > > Richard. > > 2017-09-26 Richard Biener > >

Re: [PATCH] Add helper to sort sibling loops, do so in GRAPHITE

2017-09-26 Thread Sebastian Pop
On Mon, Sep 25, 2017 at 8:18 AM, Richard Biener wrote: > > The following adds a helper to sort the sibling loop list in RPO order > as it can get messed up (we only ever add loops at the start of the list). > GRAPHITE SCOP detection assumes this list is sorted naturally in RPO

Re: [PATCH][GRAPHITE] More -fopt-info, do not abort from ISL

2017-09-26 Thread Sebastian Pop
On Mon, Sep 25, 2017 at 4:47 AM, Richard Biener wrote: > > The following also dumps if the optimized schedule is equal to the > original one. It also makes all ISL operations (well, nearly) not > abort on errors but instead propagate errors upward. > > Bootstrapped and tested

Re: [PATCH][GRAPHITE] More TLC

2017-09-22 Thread Sebastian Pop
On Fri, Sep 22, 2017 at 8:03 AM, Richard Biener wrote: > > This simplifies canonicalize_loop_closed_ssa and does other minimal > TLC. It also adds a testcase I reduced from a stupid mistake I made > when reworking canonicalize_loop_closed_ssa. > > Bootstrapped and tested on

Re: [PATCH][GRAPHITE] Simplify move_sese_in_condition

2017-09-22 Thread Sebastian Pop
On Fri, Sep 22, 2017 at 4:37 AM, Richard Biener wrote: > > This re-implements it avoding the need to recompute dominators and in > a much simpler way. > > Bootstrapped on x86_64-unknown-linux-gnu, testing in progress, SPEC CPU > 2006 is happy. > > Richard. > > 2017-09-22

Re: [PATCH][GRAPHITE] Fix PR71351

2017-09-21 Thread Sebastian Pop
On Thu, Sep 21, 2017 at 5:07 AM, Richard Biener wrote: > > This PR is about code generation issues with us inserting "loop header > copies" in the attempt to cover up cases where the loop doesn't run. > But we are disregarding such cases early already. Thus the simple > fix

Re: [PATCH][GRAPHITE] Fix IL after codegen errors

2017-09-21 Thread Sebastian Pop
On Thu, Sep 21, 2017 at 4:44 AM, Richard Biener wrote: > > The following fixes the IL after code generation errors so we can > continue processing SCOPs. This increases the number of transformed > loop nests in SPEC CPU 2006 by 50%. > > Bootstrap and regtest running on

Re: [PATCH][GRAPHITE] Fix affine constraint generation

2017-09-19 Thread Sebastian Pop
On Tue, Sep 19, 2017 at 3:30 AM, Richard Biener wrote: > > The following plugs some holes in extract_affine which failed > to modulo-reduce signed values in conversions, failed to > interpret pointer-plus offsets as signed (yeah, stupid GIMPLE IL...) > and mishandled

Re: [PATCH] Fix PR81373

2017-09-19 Thread Sebastian Pop
On Tue, Sep 19, 2017 at 9:17 AM, Richard Biener wrote: > > The following forces scev analyzable SESE liveouts to be handed as > defs. Otherwise we end up forgetting to code-generate them. We > naturally expect SCEV-cprop to handle them but that pass has cost > cutoffs (and

Re: [PATCH][GRAPHITE] Fix PR79483

2017-06-09 Thread Sebastian Pop
On Wed, Jun 7, 2017 at 4:46 AM, Richard Biener wrote: > > When the order of visiting dominator children in domwalk changed > GRAPHITE falls foul of relying on a particular order BBs are visited > when computing the original schedule from the vector of pbbs. > > The following

Re: [PATCH][GRAPHITE] Fix PR80906, code-gen IVs in loop-closed position

2017-05-30 Thread Sebastian Pop
On Tue, May 30, 2017 at 7:56 AM, Richard Biener wrote: > > We currently ICE when code generating loop-closed PHIs that are after-loop > used IVs. I didn't manage to find the place during analysis that is > supposed to reject such SCOPs thus the following patch "simply" makes >

Re: [PATCH] Fix PR80539

2017-04-27 Thread Sebastian Pop
The patch looks good to me. Thanks, Sebastian On Thu, Apr 27, 2017 at 4:25 AM, Richard Biener wrote: > > SCEV analysis requires us to be in loop-closed SSA form to be able > to compute overall effects of inner loops when required. Unfortunately > we have too many places it

Re: Fix ICE with -fauto-profile when walking vdefs

2017-04-18 Thread Sebastian Pop
On Mon, Apr 3, 2017 at 5:34 AM, Richard Biener <rguent...@suse.de> wrote: > On Fri, 31 Mar 2017, Sebastian Pop wrote: > >> On Fri, Mar 31, 2017 at 12:06 PM, Richard Biener <rguent...@suse.de> wrote: > Does the following fix it? &g

Re: Fix ICE with -fauto-profile when walking vdefs

2017-03-31 Thread Sebastian Pop
On Fri, Mar 31, 2017 at 1:50 PM, Richard Biener wrote: > That looks like a workaround rather than the correct fix. Who sets .MEM? It > should assign the proper def. > Moving the auto_profile pass above several other passes fixes the problem. The minimal change to fix the

Re: Fix ICE with -fauto-profile when walking vdefs

2017-03-31 Thread Sebastian Pop
On Fri, Mar 31, 2017 at 12:06 PM, Richard Biener wrote: > That's not a default definition but bogus SSA form. You have to fix that, > not this symptom. > Ok. It also crashes when adding a call to verifty_ssa diff --git a/gcc/auto-profile.c b/gcc/auto-profile.c index

Fix ICE with -fauto-profile when walking vdefs

2017-03-31 Thread Sebastian Pop
Hi, with trunk gcc as of today and gcc releases 6.* and 5.*, I get an ICE when compiling a large c++ project with autoFDO at -O1 and above with -fauto-profile=some.gcov internal compiler error: tree check: expected ssa_name, have var_decl in walk_aliased_vdefs_1, at tree-ssa-alias.c:2912

Re: [PATCH][GRAPHITE] Remove support for ISL 0.14

2017-02-15 Thread Sebastian Pop
On Wed, Feb 15, 2017 at 6:44 AM, Thomas Schwinge wrote: > Hi! > > On Fri, 10 Feb 2017 15:13:57 +0100 (CET), Richard Biener > wrote: >> As a cleanup (and to be able to close bugs only reproducing with ISL 0.14) >> the following removes support for ISL

Re: [PATCH] Fix PR69823

2017-02-08 Thread Sebastian Pop
On Wed, Feb 8, 2017 at 8:34 AM, Richard Biener wrote: > > The following fixes walking the SESE region when determining if it is > valid. > > Bootstrap and regtest running on x86_64-unknown-linux-gnu. > > Will commit as obvious once that passed. The change looks good. Thanks,

Re: [PATCH] Fix PR71824

2017-02-07 Thread Sebastian Pop
On Tue, Feb 7, 2017 at 5:19 AM, Richard Biener wrote: > On Wed, 1 Feb 2017, Richard Biener wrote: > >> Applied as follows, bootstrapped & tested on x86_64-unknown-linux-gnu. > > And as shown by the new testcase (ICEing on the gcc-6-branch only) the > fix is not enough as

Re: [PATCH] XFAIL gcc.dg/graphite/scop-dsyrk.c

2017-02-01 Thread Sebastian Pop
Sorry for duplicates, I'm resending as plain text for the mailing list. On Wed, Feb 1, 2017 at 6:57 AM, Richard Biener wrote: > > > The following XFAILs the testcases, making them fail reliably independelty > of int/long type sizes and also providing new testcase variants that

Re: [PATCH] Provide opt-info for autopar and graphite

2017-02-01 Thread Sebastian Pop
On Wed, Feb 1, 2017 at 4:43 AM, Richard Biener wrote: > * graphite.c: Include tree-vectorizer.h for find_loop_location. > (graphite_transform_loops): Provide opt-info for optimized nests. > * tree-parloop.c (parallelize_loops): Provide opt-info for >

Re: [PATCH] Fix PR71824

2017-01-31 Thread Sebastian Pop
On Tue, Jan 31, 2017 at 9:11 AM, Richard Biener <rguent...@suse.de> wrote: > On Tue, 31 Jan 2017, Richard Biener wrote: > >> On Tue, 31 Jan 2017, Sebastian Pop wrote: >> >> > Resend as plain text to please gcc-patches@ >> > >> > On Tue, Jan 3

Re: [PATCH] Fix PR71824

2017-01-31 Thread Sebastian Pop
On Tue, Jan 31, 2017 at 9:06 AM, Richard Biener <rguent...@suse.de> wrote: > On Tue, 31 Jan 2017, Sebastian Pop wrote: > >> On Tue, Jan 31, 2017 at 7:49 AM, Richard Biener <rguent...@suse.de> wrote: >> >> > >> > The following fixes an ICE that happ

Re: [PATCH] Fix PR71824

2017-01-31 Thread Sebastian Pop
Resend as plain text to please gcc-patches@ On Tue, Jan 31, 2017 at 8:39 AM, Sebastian Pop <seb...@gmail.com> wrote: > > > On Tue, Jan 31, 2017 at 7:49 AM, Richard Biener <rguent...@suse.de> wrote: >> >> >> The following fixes an ICE that happens because

Re: [PATCH 2/3] [graphite] add array access function in the right order

2016-04-11 Thread Sebastian Pop
On Sat, Apr 9, 2016 at 11:00 AM, Tom de Vries <tom_devr...@mentor.com> wrote: > On 09/12/15 19:26, Sebastian Pop wrote: >> >> we used to add the access functions in the wrong order, Fortran style, >> leading to unprofitable interchanges. >> --- >> gcc/gra

Re: [PATCH, PR68953] Fix pdr accesses order

2016-04-08 Thread Sebastian Pop
On Fri, Apr 8, 2016 at 2:03 AM, Tom de Vries wrote: > pdr_0 (read > in gimple stmt: _9 = yu[_8][0]; > data accesses: { S_4[i1, i2] -> [1, 0, 1 + i1] } data access should be { S_4[i1, i2] -> [1, 1 + i1, 0] } > subscript sizes: { [1, i1, 0] : i1 >= 0 and i1 <= 3 } > )

[PATCH] [graphite] document that isl-0.16 is supported

2016-01-29 Thread Sebastian Pop
* config/isl.m4: Add comments about isl-0.16. * configure: Regenerate. gcc/ * doc/install.texi: Document that isl-0.16 is supported. --- config/isl.m4| 6 +++--- configure| 12 ++-- gcc/doc/install.texi | 2 +- 3 files changed, 10

[PATCH 2/3] [graphite] use codegen_error_p

2016-01-28 Thread Sebastian Pop
* graphite-isl-ast-to-gimple.c (binary_op_to_tree): Call codegen_error_p. (ternary_op_to_tree): Same. (unary_op_to_tree): Same. (nary_op_to_tree): Same. (gcc_expression_from_isl_expr_op): Same. (gcc_expression_from_isl_expression): Same.

[PATCH 3/3] [graphite] remove out of sync comments

2016-01-28 Thread Sebastian Pop
* graphite-isl-ast-to-gimple.c (class translate_isl_ast_to_gimple): Remove comments from class declarations: they are already in the code close by the defs. --- gcc/graphite-isl-ast-to-gimple.c | 437 --- 1 file changed, 83

[PATCH 1/3] [graphite] assert instead of silently failing code gen

2016-01-28 Thread Sebastian Pop
* graphite-isl-ast-to-gimple.c (get_rename_from_scev): Assert instead of setting codegen_error to fail codegen. --- gcc/graphite-isl-ast-to-gimple.c | 26 ++ 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/gcc/graphite-isl-ast-to-gimple.c

[PATCH] [graphite] make debug comment more explicit

2016-01-28 Thread Sebastian Pop
2016-01-28 Abderrazek Zaafrani * graphite-optimize-isl.c (optimize_isl): Print a different debug message when isl does not return a valid schedule. --- gcc/graphite-optimize-isl.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff

Re: [PATCH, PR69110] Don't return NULL access_fns in dr_analyze_indices

2016-01-26 Thread Sebastian Pop
Tom de Vries wrote: > diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c > index a40f40d..4c29fc2 100644 > --- a/gcc/tree-data-ref.c > +++ b/gcc/tree-data-ref.c > @@ -1510,8 +1510,9 @@ initialize_data_dependence_relation (struct > data_reference *a, >if (operand_equal_p (DR_REF (a),

[PATCH] [graphite] handle isl_ast_op_select

2016-01-26 Thread Sebastian Pop
2016-01-26 Abderrazek Zaafrani <a.zaafr...@samsung.com> Sebastian Pop <s@samsung.com> * graphite-isl-ast-to-gimple.c (ternary_op_to_tree): Handle isl_ast_op_cond and isl_ast_op_select. (gcc_expression_from_isl_expr_op): Same. * gcc

[PATCH 1/3] add missing testcase

2016-01-25 Thread Sebastian Pop
--- gcc/testsuite/gcc.dg/graphite/pr69292.c | 19 +++ 1 file changed, 19 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/graphite/pr69292.c diff --git a/gcc/testsuite/gcc.dg/graphite/pr69292.c b/gcc/testsuite/gcc.dg/graphite/pr69292.c new file mode 100644 index

[PATCH 2/3] fix PR68343: disable fuse-*.c tests for isl 0.14 or earlier

2016-01-25 Thread Sebastian Pop
The patch disables all fuse-*.c tests when configuring gcc with isl 0.14 or earlier. ChangeLog: * Makefile.in: Regenerate. * Makefile.tpl: Export ISLVER. * configure: Regenerate. * config/isl.m4: Detect isl-0.15. gcc/ * Makefile.in: Set ISLVER in

[PATCH 3/3] new scop schedule for isl-0.15

2016-01-25 Thread Sebastian Pop
Keep unchanged the implementation for isl-0.14. * graphite-poly.c (apply_poly_transforms): Simplify. (print_isl_set): Use more readable format: ISL_YAML_STYLE_BLOCK. (print_isl_map): Same. (print_isl_union_map): Same. (print_isl_schedule): New.

Re: [PATCH, PR69110] Don't return NULL access_fns in dr_analyze_indices

2016-01-23 Thread Sebastian Pop
On Sat, Jan 23, 2016 at 12:28 PM, Tom de Vries wrote: > That was my original patch, and Richard commented: 'I think avoiding a NULL > access_fns is ok but it should be done unconditionally, not only for the > DECL_P case'. In order words, he asked me to do the exact

Re: [PATCH, PR68976] Use reaching def phi arg in sese_add_exit_phis_edge

2016-01-15 Thread Sebastian Pop
On Fri, Jan 15, 2016 at 7:58 AM, Tom de Vries wrote: > During scop detection/canonicalize_loop_closed_ssa_form, an exit phi is > introduced in the loop for _24: > ... > : > # _58 = PHI <_24(22)> > ... > Note that _24 is not defined in the loop, but before it. AFAIU the

[PATCH 13/15] reinstantiate loop blocking

2016-01-15 Thread Sebastian Pop
* graphite-optimize-isl.c (get_schedule_for_node_st): Add back. (optimize_isl): Call isl_schedule_map_schedule_node_bottom_up. * params.def (PARAM_LOOP_BLOCK_TILE_SIZE): Adjust to 32. gcc/testsuite * gcc.dg/graphite/block-1.c: * gcc.dg/graphite/block-5.c:

[PATCH 08/15] record loops in execution order

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-scop-detection.c (record_loop_in_sese): New. (gather_bbs::before_dom_children): Call record_loop_in_sese. (build_scops): Remove call to build_sese_loop_nests. * sese.c (sese_record_loop):

[PATCH 04/15] add missing ast node for isl 0.15

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-isl-ast-to-gimple.c (translate_isl_ast): Also handle isl_ast_node_mark. --- gcc/graphite-isl-ast-to-gimple.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-i

[PATCH 07/15] check that all loops are valid in the combined region

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> the bug was exposed by rewriting an if condition into an assert in the computation of the loop iteration domains. * graphite-scop-detection.c (loop_is_valid_scop): Renamed loop_is_valid_in_scop. (scop_detection::harmful_stmt_in_

[PATCH 03/15] fix PR68343: disable graphite tests for isl 0.14 or earlier

2016-01-15 Thread Sebastian Pop
From: Aditya Kumar The patch disables all optimizations when configuring gcc with isl 0.14 or earlier. The next patch makes use of the schedule-trees that is only availaible in isl 0.15. ChangeLog: * Makefile.in: Regenerate. * Makefile.tpl: Export ISLVER.

[PATCH 11/15] check for unstructured control flow

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-scop-detection.c (scop_detection::harmful_loop_in_region): Discard unstructured if-then-else regions. --- gcc/graphite-scop-detection.c | 12 1 file changed, 12 insertions(+) diff --git a/gcc/graphit

[PATCH 06/15] fix codegen error exposed by compute isl flow patch

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> we used to fail using an iv from a different loop. * graphite-isl-ast-to-gimple.c (enum phi_node_kind): New. (class translate_isl_ast_to_gimple): Use phi_node_kind instead of bool. (is_valid_rename)

[PATCH 02/15] remove unused variable

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> 2015-12-30 Sebastian Pop <seb...@gmail.com> * graphite-poly.c (new_poly_bb): Remove use of PBB_IS_REDUCTION. * graphite.h (struct poly_bb): Remove field is_reduction. (PBB_IS_REDUCTION): Remove. --- gcc/graphite-poly.

[PATCH 12/15] new scop schedule.

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-dependences.c (scop_get_reads): Do not call isl_union_map_add_map that is undocumented isl functionality. (scop_get_must_writes): Same. (scop_get_may_writes): Same. (scop_get_original_schedule):

[PATCH 05/15] remove tiling

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> We remove all code related to tiling, then we will call isl functionality for that. * graphite-isl-ast-to-gimple.c (set_options_for_schedule_tree): Remove. (translate_isl_ast_to_gimple::scop_to_isl_ast): Call set_separate_

[PATCH 10/15] rewrite computation of iteration domains

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-sese-to-poly.c (set_scop_parameter_dim): Remove. (cleanup_loop_iter_dom): Remove. (build_loop_iteration_domains): Remove. (build_scop_context): Remove. (build_scop_iteration_domain):

[PATCH 01/15] add more coalescing to simplify constraints

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> 2015-12-30 Aditya Kumar <aditya...@samsung.com> Sebastian Pop <s@samsung.com> * graphite-dependences.c (constrain_domain): Add call to isl_*_coalesce. (add_pdr_constraints): Same. (sco

[PATCH 09/15] fix memory leak in scop-detection

2016-01-15 Thread Sebastian Pop
From: Sebastian Pop <s@samsung.com> * graphite-scop-detection.c (scop_detection::harmful_loop_in_region): Free dom and loops. (scop_detection::loop_body_is_valid_scop): Free bbs. --- gcc/graphite-scop-detection.c | 14 +++--- 1 file changed, 11 inse

[PATCH] [graphite] fix PR68976: only add loop close phi for names defined in loop

2016-01-15 Thread Sebastian Pop
* graphite-isl-ast-to-gimple.c: Fix comment. * graphite-scop-detection.c (defined_in_loop_p): New. (canonicalize_loop_closed_ssa): Do not add close phi nodes for SSA names defined in loop. gcc/testsuite * gcc.dg/graphite/pr68976.c: New test. ---

Re: [PATCH, PR68976] Use reaching def phi arg in sese_add_exit_phis_edge

2016-01-15 Thread Sebastian Pop
On Fri, Jan 15, 2016 at 11:19 AM, Sebastian Pop <seb...@gmail.com> wrote: > On Fri, Jan 15, 2016 at 7:58 AM, Tom de Vries <tom_devr...@mentor.com> wrote: >> During scop detection/canonicalize_loop_closed_ssa_form, an exit phi is >> introduced in the loop for _24: >

[PATCH] [graphite] fix pr68692: reinstantiate the copy of internal parameters

2016-01-15 Thread Sebastian Pop
Adding a testcase and reverting this patch: [PATCH] remove parameter_rename_map This map was used in the transition to the new scop detection: with the new scop detection, we do not need this map anymore. * graphite-isl-ast-to-gimple.c (gcc_expression_from_isl_ast_expr_id): Remove

Re: [PATCH 1/2] [graphite] add more dumps on data dependence graph

2016-01-09 Thread Sebastian Pop
On Sat, Jan 9, 2016 at 7:26 AM, Gerald Pfeifer <ger...@pfeifer.com> wrote: > Hi Sebastian, > > On Fri, 25 Dec 2015, Sebastian Pop wrote: >>> on December 17th 2015, my nightly bootstrap (on i386-unknown-freebsd10.1, >>> but I don't think this is mat

[PATCH 1/4] [graphite] add more coalescing to simplify constraints

2015-12-18 Thread Sebastian Pop
--- gcc/graphite-dependences.c | 63 ++-- gcc/graphite-isl-ast-to-gimple.c | 2 ++ gcc/graphite-optimize-isl.c | 12 gcc/graphite-sese-to-poly.c | 28 -- 4 files changed, 56 insertions(+), 49 deletions(-) diff --git

[PATCH 3/4] [graphite] add tiling on schedule trees

2015-12-18 Thread Sebastian Pop
--- gcc/graphite-optimize-isl.c | 96 - gcc/graphite-poly.c | 19 + gcc/graphite.h | 2 + gcc/params.def | 2 +- 4 files changed, 108 insertions(+), 11 deletions(-) diff --git a/gcc/graphite-optimize-isl.c

[PATCH 2/4] [graphite] remove isl scheduler optimizations for deprecated isl 0.14

2015-12-18 Thread Sebastian Pop
--- gcc/graphite-isl-ast-to-gimple.c | 56 +++ gcc/graphite-optimize-isl.c | 317 +-- gcc/graphite-poly.c | 24 +-- 3 files changed, 40 insertions(+), 357 deletions(-) diff --git a/gcc/graphite-isl-ast-to-gimple.c

[PATCH 4/4] [graphite] add missing ast node for isl 0.15

2015-12-18 Thread Sebastian Pop
--- gcc/graphite-isl-ast-to-gimple.c | 9 + 1 file changed, 9 insertions(+) diff --git a/gcc/graphite-isl-ast-to-gimple.c b/gcc/graphite-isl-ast-to-gimple.c index 64183c4..7e00b17 100644 --- a/gcc/graphite-isl-ast-to-gimple.c +++ b/gcc/graphite-isl-ast-to-gimple.c @@ -1245,6 +1245,15 @@

[PATCH] [graphite] replace ISL with isl

2015-12-17 Thread Sebastian Pop
--- Makefile.in | 2 +- Makefile.tpl | 2 +- config/isl.m4 | 2 +- configure | 10 +++--- configure.ac | 14

[PATCH] [graphite] update required isl version

2015-12-16 Thread Sebastian Pop
we check for a the isl compute timeout function added in isl 0.13. That means GCC could still be configured with isl 0.13, 0.14, and 0.15. * config/isl.m4 (ISL_CHECK_VERSION): Check for isl_ctx_get_max_operations. * configure: Regenerate. gcc/ * config.in:

[PATCH] [graphite] move all isl include files to graphite.h

2015-12-16 Thread Sebastian Pop
* graphite-dependences.c: Move all isl include files to... * graphite-isl-ast-to-gimple.c: Same. * graphite-optimize-isl.c: Same. * graphite-poly.c: Same. * graphite-scop-detection.c: Same. * graphite.c: Same. * graphite.h: ... here. ---

[PATCH] [graphite] attach schedule tree to the scop

2015-12-16 Thread Sebastian Pop
we used to translate the just computed schedule tree into a union_map, and then in the code generation it would be translated back to a schedule tree just before generating AST code. --- gcc/graphite-isl-ast-to-gimple.c | 65 ++-- gcc/graphite-optimize-isl.c

[PATCH 2/2] [graphite] update required isl versions

2015-12-14 Thread Sebastian Pop
we now check the isl version, as there are no real differences in existing files in between isl 0.14 and isl 0.15. --- config/isl.m4| 29 +++ configure| 23 +-- gcc/config.in| 12 gcc/configure

[PATCH 1/2] [graphite] add more dumps on data dependence graph

2015-12-14 Thread Sebastian Pop
--- gcc/graphite-dependences.c| 31 +++ gcc/graphite-poly.c | 15 ++- gcc/graphite-scop-detection.c | 21 - 3 files changed, 57 insertions(+), 10 deletions(-) diff --git a/gcc/graphite-dependences.c

Re: [committed 5/5] Fix -Wmisleading-indentation warning in graphite-optimize-isl.c

2015-12-11 Thread Sebastian Pop
David Malcolm wrote: > gcc/ChangeLog: > * graphite-optimize-isl.c (scop_get_domains): Fix indentation. > --- > gcc/graphite-optimize-isl.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gcc/graphite-optimize-isl.c b/gcc/graphite-optimize-isl.c > index

  1   2   3   4   5   >