This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/34171] [4.3 Regression] Segfault in df_chain_remove_problem with -O3 on alpha
- From: "spark at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Nov 2007 20:40:45 -0000
- Subject: [Bug rtl-optimization/34171] [4.3 Regression] Segfault in df_chain_remove_problem with -O3 on alpha
- References: <bug-34171-12387@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #12 from spark at gcc dot gnu dot org 2007-11-21 20:40 -------
At the end of fwprop2 pass in fwprop_done(), we call cleanup_cfg()
and it merges a few blocks, making some bb disappear (in this particular case,
bb index 25), which clears the bit in df_chain->out_of_date_transfer_functions.
Then, somehow, some of the insns originating from 25 has their bb numbers not
reset, and later those insns get the new bb numbers assigned, at which point we
call df_insn_change_bb(), which sets the bit for the deleted block on
out_of_date_transfer_functions map.
Then after fwprop, TODO runs df_finish_pass and we bomb.
I'm working on a fix.
--
spark at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Last reconfirmed|2007-11-21 17:47:04 |2007-11-21 20:40:45
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34171