[Bug tree-optimization/70267] ICE on valid code at -O1 and above on x86_64-linux-gnu in propagate_necessity, at tree-ssa-dce.c:924

2016-03-19 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70267

--- Comment #2 from Marek Polacek  ---
We ICE in propagate_necessity because it can't digest
# VUSE <.MEM_3>
f.0_4 = (struct Foo *) D.2296;
which is 
(gdb) p gimple_code(stmt)
$2 = GIMPLE_ASSIGN
but
(gdb) p gimple_assign_single_p (stmt)
$3 = false
thus we end up in the gcc_unreachable (); branch there.

[Bug tree-optimization/70267] ICE on valid code at -O1 and above on x86_64-linux-gnu in propagate_necessity, at tree-ssa-dce.c:924

2016-03-19 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70267

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2016-03-17
 CC||mpolacek at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Marek Polacek  ---
Confirmed, but I can't really bisect this, even g++34 ICEs.  E.g. r104500 gives

h.c: In function ‘void Bar4()’:
h.c:34: internal compiler error: in emit_move_insn, at expr.c:3145
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.