https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68335
Bug ID: 68335 Summary: ICE: tree check: expected ssa_name, have real_cst in add_phi_arg_for_new_expr, at sese.c:1373 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: > gfortran -c -O2 -floop-nest-optimize bug.f90 bug.f90:27:0: SUBROUTINE whittaker_c0 ( wc, r, expa, erfa, alpha, l, n ) internal compiler error: tree check: expected ssa_name, have real_cst in add_phi_arg_for_new_expr, at sese.c:1373 0xdece94 tree_check_failed(tree_node const*, char const*, int, char const*, ...) ../../gcc/gcc/tree.c:9587 0x12ee8ba tree_check ../../gcc/gcc/tree.h:2938 0x12ee8ba add_phi_arg_for_new_expr ../../gcc/gcc/sese.c:1373 0x12ee8ba copy_cond_phi_args(gphi*, gphi*, vec<tree_node*, va_heap, vl_ptr>, sese_info_t*, bool) ../../gcc/gcc/sese.c:1589 0x12f05ca copy_cond_phi_nodes ../../gcc/gcc/sese.c:1624 0x12f05ca copy_bb_and_scalar_dependences(basic_block_def*, sese_info_t*, edge_def*, vec<tree_node*, va_heap, vl_ptr>, bool*) ../../gcc/gcc/sese.c:1824 0x1256b65 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:816 0x1257ee5 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:853 0x1257ee5 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:853 0x1257126 translate_isl_ast_to_gimple::translate_isl_ast_for_loop(loop*, isl_ast_node*, edge_def*, tree_node*, tree_node*, tree_node*, 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:585 0x125729c translate_isl_ast_to_gimple::translate_isl_ast_node_for(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:738 0x1257ee5 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:853 0x1257ee5 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:853 0x1257ee5 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:853 0x1257ee5 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:853 0x1257126 translate_isl_ast_to_gimple::translate_isl_ast_for_loop(loop*, isl_ast_node*, edge_def*, tree_node*, tree_node*, tree_node*, 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:585 0x125729c translate_isl_ast_to_gimple::translate_isl_ast_node_for(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:738 0x12577f3 graphite_regenerate_ast_isl(scop*) ../../gcc/gcc/graphite-isl-ast-to-gimple.c:1195 0x1255330 graphite_transform_loops() ../../gcc/gcc/graphite.c:343 0x1255800 graphite_transforms ../../gcc/gcc/graphite.c:371 Please submit a full bug report, > cat bug.f90 MODULE whittaker INTEGER, PARAMETER :: dp=8 INTEGER, PARAMETER :: maxfac = 30 REAL(KIND=dp), PARAMETER, DIMENSION (-1:2*maxfac+1) :: dfac = (/& 0.10000000000000000000E+01_dp, 0.10000000000000000000E+01_dp, 0.10000000000000000000E+01_dp,& 0.20000000000000000000E+01_dp, 0.30000000000000000000E+01_dp, 0.80000000000000000000E+01_dp,& 0.15000000000000000000E+02_dp, 0.48000000000000000000E+02_dp, 0.10500000000000000000E+03_dp,& 0.38400000000000000000E+03_dp, 0.94500000000000000000E+03_dp, 0.38400000000000000000E+04_dp,& 0.10395000000000000000E+05_dp, 0.46080000000000000000E+05_dp, 0.13513500000000000000E+06_dp,& 0.64512000000000000000E+06_dp, 0.20270250000000000000E+07_dp, 0.10321920000000000000E+08_dp,& 0.34459425000000000000E+08_dp, 0.18579456000000000000E+09_dp, 0.65472907500000000000E+09_dp,& 0.37158912000000000000E+10_dp, 0.13749310575000000000E+11_dp, 0.81749606400000000000E+11_dp,& 0.31623414322500000000E+12_dp, 0.19619905536000000000E+13_dp, 0.79058535806250000000E+13_dp,& 0.51011754393600000000E+14_dp, 0.21345804667687500000E+15_dp, 0.14283291230208000000E+16_dp,& 0.61902833536293750000E+16_dp, 0.42849873690624000000E+17_dp, 0.19189878396251062500E+18_dp,& 0.13711959580999680000E+19_dp, 0.63326598707628506250E+19_dp, 0.46620662575398912000E+20_dp,& 0.22164309547669977187E+21_dp, 0.16783438527143608320E+22_dp, 0.82007945326378915594E+22_dp,& 0.63777066403145711616E+23_dp, 0.31983098677287777082E+24_dp, 0.25510826561258284646E+25_dp,& 0.13113070457687988603E+26_dp, 0.10714547155728479551E+27_dp, 0.56386202968058350995E+27_dp,& 0.47144007485205310027E+28_dp, 0.25373791335626257948E+29_dp, 0.21686243443194442612E+30_dp,& 0.11925681927744341235E+31_dp, 0.10409396852733332454E+32_dp, 0.58435841445947272053E+32_dp,& 0.52046984263666662269E+33_dp, 0.29802279137433108747E+34_dp, 0.27064431817106664380E+35_dp,& 0.15795207942839547636E+36_dp, 0.14614793181237598765E+37_dp, 0.86873643685617511998E+37_dp,& 0.81842841814930553085E+38_dp, 0.49517976900801981839E+39_dp, 0.47468848252659720789E+40_dp,& 0.29215606371473169285E+41_dp, 0.28481308951595832474E+42_dp, 0.17821519886598633264E+43_dp/) CONTAINS SUBROUTINE whittaker_c0 ( wc, r, expa, erfa, alpha, l, n ) INTEGER, INTENT(IN) :: n, l REAL(KIND=dp), INTENT(IN) :: alpha REAL(KIND=dp), DIMENSION(n) :: erfa, expa, r, wc INTEGER :: i, k REAL(dp) :: t1,x SELECT CASE (l) CASE DEFAULT DO i = 1, n DO k = 0, l/2 wc(i) = wc(i) + expa(i)*x**(2*k+1)*t1**(2*k+3)*& dfac(l+1)/dfac(2*k+1)*2**(k+1) END DO END DO END SELECT END SUBROUTINE whittaker_c0 END MODULE whittaker