https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68453
Bug ID: 68453 Summary: graphite ICE: segfault 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: --- current trunk (r230637) crashes with > cat bug.f90 MODULE dbcsr_geev INTEGER, PARAMETER :: real_8=8 CONTAINS SUBROUTINE dbcsr_dgeev(jobvl,jobvr,matrix,ndim,evals,revec,levec) CHARACTER(1) :: jobvl, jobvr REAL(real_8), DIMENSION(:, :) :: matrix INTEGER :: ndim COMPLEX(real_8), DIMENSION(:) :: evals COMPLEX(real_8), DIMENSION(:, :) :: revec, levec INTEGER :: i, info, lwork REAL(real_8) :: norm, tmp_array(ndim,ndim), & work(20*ndim) REAL(real_8), DIMENSION(ndim) :: eval1, eval2 REAL(real_8), DIMENSION(ndim, ndim) :: evec_l, evec_r DO WHILE (i.le.ndim) IF(ABS(eval2(i)).LT.EPSILON(REAL(0.0,real_8)))THEN norm=SQRT(SUM(evec_r(:,i)**2.0_real_8)+SUM(evec_r(:,i+1)**2.0_real_8)) revec(:,i)=CMPLX(evec_r(:,i),evec_r(:,i+1),real_8)/norm END IF END DO END SUBROUTINE dbcsr_dgeev END MODULE dbcsr_geev > gfortran -c -O2 -floop-nest-optimize bug.f90 bug.f90:4:0: SUBROUTINE dbcsr_dgeev(jobvl,jobvr,matrix,ndim,evals,revec,levec) internal compiler error: Segmentation fault 0xb5c56f crash_signal ../../gcc/gcc/toplev.c:334 0xbaf347 ssa_default_def(function*, tree_node*) ../../gcc/gcc/tree-dfa.c:305 0xbb1d88 get_or_create_ssa_default_def(function*, tree_node*) ../../gcc/gcc/tree-dfa.c:357 0xbe8ce3 get_reaching_def ../../gcc/gcc/tree-into-ssa.c:1168 0xbe8ce3 get_reaching_def ../../gcc/gcc/tree-into-ssa.c:1155 0xbea968 rewrite_update_phi_arguments ../../gcc/gcc/tree-into-ssa.c:2015 0xbea968 rewrite_update_dom_walker::before_dom_children(basic_block_def*) ../../gcc/gcc/tree-into-ssa.c:2135 0xbea968 rewrite_update_dom_walker::before_dom_children(basic_block_def*) ../../gcc/gcc/tree-into-ssa.c:2068 0x124aeda dom_walker::walk(basic_block_def*) ../../gcc/gcc/domwalk.c:176 0xbe7715 rewrite_blocks ../../gcc/gcc/tree-into-ssa.c:2190 0xbee94e update_ssa(unsigned int) ../../gcc/gcc/tree-into-ssa.c:3351 0x1274bb1 translate_isl_ast_to_gimple::translate_isl_ast_node_user(isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:1026 0x1275505 translate_isl_ast_to_gimple::translate_isl_ast_node_block(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:1051 0x1275505 translate_isl_ast_to_gimple::translate_isl_ast_node_block(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:1051 0x1275505 translate_isl_ast_to_gimple::translate_isl_ast_node_block(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:1051 0x1274f7a graphite_regenerate_ast_isl(scop*) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:2999 0x126d690 graphite_transform_loops() ../../gcc/gcc/graphite.c:343 0x126db60 graphite_transforms ../../gcc/gcc/graphite.c:371 0x126db60 execute ../../gcc/gcc/graphite.c:448 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions.