https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90004

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2019-04-08
                 CC|                            |rguenth at gcc dot gnu.org,
                   |                            |spop at gcc dot gnu.org,
                   |                            |tobi-grosser at web dot de
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Can reproduce on x86_64-linux with -m32 with ISL 0.21 but not ISL 0.20.  The
crash happens inside ISL though:

internal compiler error: Segmentation fault
0x1239033 crash_signal
        /tmp/trunk/gcc/toplev.c:326
0x7effbfe50fdf ???
       
/usr/src/debug/glibc-2.22/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0
0x22b65b0 normalize_divs
        /tmp/trunk/isl/isl_map_simplify.c:1044
0x22b7b59 isl_basic_map_simplify
        /tmp/trunk/isl/isl_map_simplify.c:1435
0x22986e8 isl_basic_map_intersect
        /tmp/trunk/isl/isl_map.c:3569
0x2298d35 map_intersect_internal
        /tmp/trunk/isl/isl_map.c:3703
0x2298e5e map_intersect
        /tmp/trunk/isl/isl_map.c:3729
0x22932d8 isl_map_align_params_map_map_and
        /tmp/trunk/isl/isl_map.c:1442
0x2298ea7 isl_map_intersect
        /tmp/trunk/isl/isl_map.c:3739
0x2298ee0 isl_set_intersect
        /tmp/trunk/isl/isl_map.c:3744
0x22a0be2 isl_map_partial_lexopt_aligned_pw_multi_aff
        /tmp/trunk/isl/isl_map.c:6799
0x22a1252 isl_map_partial_lexopt_aligned
        /tmp/trunk/isl/isl_map.c:6877
0x22a0ff5 isl_map_partial_lexopt
        /tmp/trunk/isl/isl_map_lexopt_templ.c:182
0x22a12c2 isl_map_partial_lexmax
        /tmp/trunk/isl/isl_map.c:6892
0x227ad0f restricted_partial_lexmax
        /tmp/trunk/isl/isl_flow.c:590
0x227b005 last_source
        /tmp/trunk/isl/isl_flow.c:651
0x227c62f compute_val_based_dependences
        /tmp/trunk/isl/isl_flow.c:1204
0x227cda2 access_info_compute_flow_core
        /tmp/trunk/isl/isl_flow.c:1338
0x227fbfc compute_single_flow
        /tmp/trunk/isl/isl_flow.c:3094
0x227fef2 compute_flow_schedule
        /tmp/trunk/isl/isl_flow.c:3178
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Program received signal SIGSEGV, Segmentation fault.
0x00000000022b65b0 in normalize_divs (bmap=0x0, progress=0x7fffffffd078)
    at /tmp/trunk/isl/isl_map_simplify.c:1044
1044                    for (i = 0; i < bmap->n_eq; ++i)
...
#19 0x0000000001fa482d in scop_get_dependences (scop=0x34ea320)
    at /tmp/trunk/gcc/graphite-dependences.c:316
316       flow = isl_union_access_info_compute_flow (ai);

not sure if it is still GCCs fault in the end or not.  At least there's

(gdb) l
1430                    bmap = eliminate_unit_divs(bmap, &progress);
1431                    bmap = eliminate_divs_eq(bmap, &progress);
1432                    bmap = eliminate_divs_ineq(bmap, &progress);
1433                    bmap = isl_basic_map_gauss(bmap, &progress);
1434                    /* requires equalities in normal form */
1435                    bmap = normalize_divs(bmap, &progress);

and isl_basic_map_gauss has paths where it can return NULL.

Reply via email to