https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68279
Bug ID: 68279 Summary: ICE: in create_pw_aff_from_tree, at graphite-sese-to-poly.c:836 Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: Joost.VandeVondele at mat dot ethz.ch Target Milestone: --- with gcc version 6.0.0 20151110 (experimental) [trunk revision 230080] (GCC) > gfortran -c -O2 -floop-nest-optimize bug.f90 internal compiler error: in create_pw_aff_from_tree, at graphite-sese-to-poly.c:836 0x1252a13 create_pw_aff_from_tree ../../gcc/gcc/graphite-sese-to-poly.c:836 0x1252a13 create_pw_aff_from_tree ../../gcc/gcc/graphite-sese-to-poly.c:831 0x1258c9b add_condition_to_pbb ../../gcc/gcc/graphite-sese-to-poly.c:849 0x1258c9b add_conditions_to_domain ../../gcc/gcc/graphite-sese-to-poly.c:917 0x1258c9b add_conditions_to_constraints ../../gcc/gcc/graphite-sese-to-poly.c:940 0x1258c9b build_poly_scop(scop*) ../../gcc/gcc/graphite-sese-to-poly.c:1840 0x124773b graphite_transform_loops() ../../gcc/gcc/graphite.c:332 0x1247bd0 graphite_transforms ../../gcc/gcc/graphite.c:367 0x1247bd0 execute ../../gcc/gcc/graphite.c:444 Please submit a full bug report, > cat bug.f90 MODULE dbcsr_mm_accdrv INTEGER, SAVE :: accdrv_binning_nbins = 4096 INTEGER, SAVE :: accdrv_binning_binsize = 16 INTEGER, PARAMETER, PUBLIC :: dbcsr_ps_width = 7 CONTAINS SUBROUTINE stack_binning(params_in, params_out, stack_size) INTEGER, INTENT(IN) :: stack_size INTEGER, DIMENSION(dbcsr_ps_width, & stack_size), INTENT(OUT) :: params_out INTEGER, DIMENSION(dbcsr_ps_width, & stack_size), INTENT(IN) :: params_in INTEGER, DIMENSION(accdrv_binning_nbins) :: bin_top INTEGER, DIMENSION(dbcsr_ps_width) :: val INTEGER, DIMENSION(dbcsr_ps_width, & accdrv_binning_binsize, & accdrv_binning_nbins) :: bin_arr DO i=1,stack_size val(:) = params_in(:,i) IF(bin_top(bin_id) > accdrv_binning_binsize) THEN params_out(:, top:top+bin_top(bin_id)-2) = bin_arr(:, 1:bin_top(bin_id)-1, bin_id) ENDIF bin_arr(:, bin_top(bin_id), bin_id) = val(:) bin_top(bin_id) = bin_top(bin_id) + 1 END DO END SUBROUTINE stack_binning