https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111600
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=111622 --- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> --- Compiling insn-opinit.ii with a cross compiler at -O2 shows (checking enabled but -fno-checking) scheduling : 34.48 ( 47%) 0.01 ( 1%) 34.50 ( 46%) 7576k ( 1%) I don't run into the stack space issue with using the cross, but GCC tries to up the stack limit and appearantly qemu doesn't implement that. With a hard limit of 8MB (our default soft limit) I hit the recursion issue also with a cross. The backtrace is Program received signal SIGSEGV, Segmentation fault. 0x0000000001808aff in range_query::get_tree_range (this=this@entry=0x5f540f0, r=..., expr=expr@entry=<integer_cst 0x7fffeecd7780>, stmt=<optimized out>) at /space/rguenther/src/gcc/gcc/value-query.cc:163 163 i.set (TREE_TYPE (expr), w, w); (gdb) bt #0 0x0000000001808aff in range_query::get_tree_range (this=this@entry=0x5f540f0, r=..., expr=expr@entry=<integer_cst 0x7fffeecd7780>, stmt=<optimized out>) at /space/rguenther/src/gcc/gcc/value-query.cc:163 #1 0x000000000273f7c6 in gimple_ranger::range_of_expr (this=0x5f540f0, r=..., expr=<integer_cst 0x7fffeecd7780>, stmt=<optimized out>) at /space/rguenther/src/gcc/gcc/gimple-range.cc:86 #2 0x00000000016dd2ce in get_range (val=val@entry=<integer_cst 0x7fffeecd7780>, stmt=<optimized out>, minmax=minmax@entry=0x7fffff7ff9b0, rvals=<optimized out>) at /space/rguenther/src/gcc/gcc/tree-ssa-strlen.cc:219 #3 0x0000000001358656 in get_offset_range (x=<integer_cst 0x7fffeecd7780>, stmt=stmt@entry=<gimple_assign 0x7fffe9c22e10>, r=r@entry=0x7fffff7ffaf0, rvals=<optimized out>) at /space/rguenther/src/gcc/gcc/pointer-query.cc:93 #4 0x000000000135bd53 in handle_mem_ref (qry=0x41938e8, snlim=..., pref=0x7fffff7ffd90, ostype=<optimized out>, stmt=<gimple_assign 0x7fffe9c22e10>, mref=<mem_ref 0x7fffef391578>) at /space/rguenther/src/gcc/gcc/pointer-query.cc:1995 #5 compute_objsize_r (ptr=<mem_ref 0x7fffef391578>, stmt=<gimple_assign 0x7fffe9c22e10>, addr=addr@entry=false, ostype=ostype@entry=0, pref=pref@entry=0x7fffff7ffd90, snlim=..., qry=0x41938e8) at /space/rguenther/src/gcc/gcc/pointer-query.cc:2262 #6 0x000000000136022a in compute_objsize (ptr=<optimized out>, stmt=stmt@entry=<gimple_assign 0x7fffe9c22e10>, ostype=ostype@entry=0, pref=0x7fffff7ffd90, ptr_qry=<optimized out>, ptr_qry@entry=0x41938e8) at /space/rguenther/src/gcc/gcc/pointer-query.cc:2368 #7 0x00000000013603f6 in pointer_query::get_ref (this=this@entry=0x41938e8, ptr=ptr@entry=<mem_ref 0x7fffef391578>, stmt=stmt@entry=<gimple_assign 0x7fffe9c22e10>, pref=pref@entry=0x7fffff7ffd90, ostype=ostype@entry=0) at /space/rguenther/src/gcc/gcc/pointer-query.cc:1516 #8 0x00000000010d8a6d in (anonymous namespace)::pass_waccess::check_dangling_stores (this=this@entry=0x4193890, bb=<basic_block 0x7fffe7bc6900 (21227)>, stores=..., bbs=...) at /space/rguenther/src/gcc/gcc/gimple-ssa-warn-access.cc:4561 ... #18067 0x00000000010e1303 in (anonymous namespace)::pass_waccess::check_dangling_stores (this=0x4193890) at /space/rguenther/src/gcc/gcc/gimple-ssa-warn-access.cc:4640 4640 check_dangling_stores (EXIT_BLOCK_PTR_FOR_FN (m_func), stores, bbs); I'll fix that. I also see insn-emit.cc compile (of the cross compiler) requiring 8GB of memory and multiple minutes (with a GCC 7 host compiler).