------- Comment #2 from rguenth at gcc dot gnu dot org 2009-10-21 12:31 ------- Confirmed.
Looks like invalid tree-sharing. On (gdb) call debug_gimple_stmt (stmt) # .MEM = VDEF <.MEM> llvm::LiveInterval::removeRange (PI_10, D.2378_13->start, D.2378_13->end, 1); we have replaced the first use but on replacing the 2nd one the INDIRECT_REF was shared. Both built from #1 0x0888e476 in build_ref_for_offset_1 (res=0xbffff068, type=0xb7d72a8c, offset=0, exp_type=0xb7d728fc) at /home/richard/src/trunk/gcc/tree-sra.c:1255 1255 expr = build3 (COMPONENT_REF, TREE_TYPE (fld), *res, fld, without unsharing *res. Thus, this is IPA-SRA. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jamborm at gcc dot gnu dot | |org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |ice-on-valid-code Known to work| |4.4.2 Last reconfirmed|0000-00-00 00:00:00 |2009-10-21 12:31:40 date| | Summary|ice in rewrite_stmt, at |[4.5 Regression] IPA-SRA: |tree-into-ssa.c:1302 |ice in rewrite_stmt, at | |tree-into-ssa.c:1302 Target Milestone|--- |4.5.0 Version|unknown |4.5.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41775