https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69170
Bug ID: 69170 Summary: [6 Regression] ICE (segfault) in find_uses_to_rename_use Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: doko at gcc dot gnu.org Target Milestone: --- trunk r232077, powerpc64le-linux-gnu, works with -O2 or without -fPIC reduced test case: typedef long sha2_word_t; typedef struct { sha2_word_t length_upper, length_lower; char buf[]; } hash_state; int a; hash_state b; void fn1() { a = 0; for (; a < 8; a++) b.buf[a + 1024 / 8] = b.length_upper >> (1 - a) * 5; a = 0; for (; a < 8; a++) b.buf[a + 1024 / 8 + 8] = b.length_lower >> (1 - a) * 5; } $ gcc -std=c99 -c -g -O3 -fno-strict-aliasing -fPIC hash_SHA2_template.i hash_SHA2_template.i: In function 'fn1': hash_SHA2_template.i:8:6: internal compiler error: Segmentation fault void fn1() { ^~~ 0x106c33b3 crash_signal ../../src/gcc/toplev.c:334 0x1080027c find_uses_to_rename_use ../../src/gcc/tree-ssa-loop-manip.c:368 0x1080095f find_uses_to_rename_use ../../src/gcc/ssa-iterators.h:566 0x1080095f find_uses_to_rename_stmt ../../src/gcc/tree-ssa-loop-manip.c:425 0x1080095f find_uses_to_rename_bb ../../src/gcc/tree-ssa-loop-manip.c:457 0x10802e3f find_uses_to_rename ../../src/gcc/tree-ssa-loop-manip.c:479 0x10802e3f rewrite_into_loop_closed_ssa_1(bitmap_head*, unsigned int, int, loop*) ../../src/gcc/tree-ssa-loop-manip.c:642 0x10913b83 execute_vrp ../../src/gcc/tree-vrp.c:10303 0x10913b83 execute ../../src/gcc/tree-vrp.c:10405 Please submit a full bug report, with preprocessed source if appropriate. (gdb) bt #0 0x000000001080027c in find_uses_to_rename_use (bb=0x3fffb59802d8, use=0x3fffb59236d8, use_blocks=0x11687400, need_phis=0x115fb580) at ../../src/gcc/tree-ssa-loop-manip.c:368 #1 0x0000000010800960 in find_uses_to_rename_use (need_phis=<optimized out>, use_blocks=<optimized out>, use=<optimized out>, bb=0x3fffb59802d8) at ../../src/gcc/ssa-iterators.h:566 #2 find_uses_to_rename_stmt (use_flags=<optimized out>, need_phis=<optimized out>, use_blocks=<optimized out>, stmt=0x3fffb5a73ca0) at ../../src/gcc/tree-ssa-loop-manip.c:425 #3 find_uses_to_rename_bb (bb=0x3fffb59802d8, use_blocks=0x11687400, need_phis=0x115fb580, use_flags=1) at ../../src/gcc/tree-ssa-loop-manip.c:457 #4 0x0000000010802e40 in find_uses_to_rename (use_flags=1, need_phis=0x115fb580, use_blocks=0x11687400, changed_bbs=<optimized out>) at ../../src/gcc/tree-ssa-loop-manip.c:479 #5 rewrite_into_loop_closed_ssa_1 (changed_bbs=<optimized out>, update_flag=<optimized out>, use_flags=<optimized out>, loop=0x0) at ../../src/gcc/tree-ssa-loop-manip.c:642 #6 0x0000000010913b84 in execute_vrp (warn_array_bounds_p=false) at ../../src/gcc/tree-vrp.c:10303 #7 (anonymous namespace)::pass_vrp::execute (this=<optimized out>) at ../../src/gcc/tree-vrp.c:10405 #8 0x00000000105de3b4 in execute_one_pass (pass=0x114ef0d0) at ../../src/gcc/passes.c:2336 #9 0x00000000105dea38 in execute_pass_list_1 (pass=0x114ef0d0) at ../../src/gcc/passes.c:2410 #10 0x00000000105dea50 in execute_pass_list_1 (pass=0x114ed010) at ../../src/gcc/passes.c:2411 #11 0x00000000105deaf8 in execute_pass_list (fn=<optimized out>, pass=<optimized out>) at ../../src/gcc/passes.c:2421 #12 0x00000000102e0800 in cgraph_node::expand (this=0x3fffb5930cf0) at ../../src/gcc/cgraphunit.c:1971 #13 0x00000000102e22c8 in expand_all_functions () at ../../src/gcc/cgraphunit.c:2107 #14 symbol_table::compile (this=0x3fffb58d0000) at ../../src/gcc/cgraphunit.c:2463 #15 0x00000000102e4724 in symbol_table::compile (this=0x3fffb58d0000) at ../../src/gcc/cgraphunit.c:2368 #16 symbol_table::finalize_compilation_unit (this=0x3fffb58d0000) at ../../src/gcc/cgraphunit.c:2553 #17 0x00000000106c3854 in compile_file () at ../../src/gcc/toplev.c:489 #18 0x0000000010170abc in do_compile () at ../../src/gcc/toplev.c:1985 #19 toplev::main (this=<optimized out>, argc=21, argv=0x3ffffffff3c8) at ../../src/gcc/toplev.c:2092 #20 0x0000000010172a98 in main (argc=<optimized out>, argv=0x3ffffffff3c8) at ../../src/gcc/main.c:39