https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61829
Bug ID: 61829 Summary: SEGV in fold_binary_loc for gcc.dg/graphite/isl-codegen-loop-dumping.c Product: gcc Version: 4.10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org CC: romangareev at gcc dot gnu.org Host: i386-pc-solaris2.11, sparc-sun-solaris2.11 Target: i386-pc-solaris2.11, sparc-sun-solaris2.11 Build: i386-pc-solaris2.11, sparc-sun-solaris2.11 Between 20140711 (r212451) and 20140716 (r212663), the gcc.dg/graphite/isl-codegen-loop-dumping.c testcase started to FAIL (32-bit only) on Solaris/x86 and SPARC: FAIL: gcc.dg/graphite/isl-codegen-loop-dumping.c (internal compiler error) FAIL: gcc.dg/graphite/isl-codegen-loop-dumping.c (test for excess errors) Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0x084af7eb in fold_binary_loc (loc=0, code=MINUS_EXPR, type=0x0, op0=0xfac63528, op1=0xfac0458c) at /vol/gcc/src/hg/trunk/local/gcc/fold-const.c:10814 10814 && !TYPE_OVERFLOW_TRAPS (type)) (gdb) where #0 0x084af7eb in fold_binary_loc (loc=0, code=MINUS_EXPR, type=0x0, op0=0xfac63528, op1=0xfac0458c) at /vol/gcc/src/hg/trunk/local/gcc/fold-const.c:10814 #1 0x084d3450 in fold_build2_stat_loc (loc=0, code=MINUS_EXPR, type=0x0, op0=0xfac63528, op1=0xfac0458c) at /vol/gcc/src/hg/trunk/local/gcc/fold-const.c:14988 #2 0x08bea952 in binary_op_to_tree (ip=..., expr=0x953a328, type=0x0) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:175 #3 gcc_expression_from_isl_expr_op (ip=..., expr=0x953a328, type=0x0) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:317 #4 gcc_expression_from_isl_expression (type=0x0, expr=0x953a328, ip=...) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:348 #5 0x08bea766 in binary_op_to_tree (ip=..., expr=0x9517968, type=0x0) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:164 #6 gcc_expression_from_isl_expr_op (ip=..., expr=0x9517968, type=0x0) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:317 #7 gcc_expression_from_isl_expression (type=0x0, expr=0x9517968, ip=...) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:348 #8 0x08beac55 in graphite_create_new_loop_guard (ip=..., ub=<synthetic pointer>, lb=<synthetic pointer>, type=<synthetic pointer>, node_for=0x949e178, entry_edge=0xfac63f00) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:501 #9 translate_isl_ast_node_for (ip=..., next_e=0xfac63f00, node=0x949e178, context_loop=0xfac0e6b4) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:536 #10 translate_isl_ast (context_loop=0xfac0e6b4, node=0x949e178, next_e=0xfac63f00, ip=...) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:558 #11 0x08beb246 in graphite_regenerate_ast_isl (scop=0x9513840) at /vol/gcc/src/hg/trunk/local/gcc/graphite-isl-ast-to-gimple.c:699 #12 0x08be65aa in graphite_transform_loops () at /vol/gcc/src/hg/trunk/local/gcc/graphite.c:304 #13 0x08be6632 in graphite_transforms (fun=0xfacb2000) at /vol/gcc/src/hg/trunk/local/gcc/graphite.c:333 #14 (anonymous namespace)::pass_graphite_transforms::execute (this=0x94a24b0, fun=0xfacb2000) at /vol/gcc/src/hg/trunk/local/gcc/graphite.c:413 #15 0x0864c2e0 in execute_one_pass (pass=0x94a24b0) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2149 #16 0x0864c85f in execute_pass_list_1 (pass=0x94a24b0) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2201 #17 0x0864c872 in execute_pass_list_1 (pass=0x94a2468) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2202 #18 0x0864c872 in execute_pass_list_1 (pass=0x94a2150) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2202 #19 0x0864c872 in execute_pass_list_1 (pass=0x94a14f0, pass@entry=0x94a1460) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2202 #20 0x0864c8bb in execute_pass_list (fn=0xfacb2000, pass=0x94a1460) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2212 #21 0x083c8c97 in expand_function (node=node@entry=0xfac071a8) at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1786 #22 0x083cae98 in expand_all_functions () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1920 #23 compile () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2264 #24 0x083cb56b in finalize_compilation_unit () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2341 #25 0x0828f24b in c_write_global_declarations () at /vol/gcc/src/hg/trunk/local/gcc/c/c-decl.c:10463 #26 0x087028e5 in compile_file () at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:562 #27 0x08704bec in do_compile () at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:1946 #28 toplev_main (argc=19, argv=0xfeffe398) at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:2022 #29 0x08f0cb7b in main (argc=19, argv=0xfeffe398) at /vol/gcc/src/hg/trunk/local/gcc/main.c:36 (gdb) p type $1 = (tree) 0x0 This is almost certainly due to 2014-07-11 Roman Gareev <gareevro...@gmail.com> * graphite-isl-ast-to-gimple.c (gmp_cst_to_tree): New function. (graphite_verify): New function. (ivs_params_clear): New function. [...] which went in as r212455. Rainer