This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/68335] New: ICE: tree check: expected ssa_name, have real_cst in add_phi_arg_for_new_expr, at sese.c:1373


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]