On 04/17/2013 02:12 PM, Steven Bosscher wrote:
On Fri, Mar 29, 2013 at 1:05 PM, Steven Bosscher wrote:
It looks like there are places in the middle end that use remove_insn
on insns that are not actually emitted. This breaks the assert I added
in df_insn_delete. The patch disables the assert for now. The comment
before the assert is now even messier than before but I think it's
better to explain why the assert cannot work than to remove the
comment and the assert altogether.
This is no longer necessary, now that remove_insn doesn't use
df_insn_delete. Only a small patch to lower-subreg.c is needed to
restore the check.
Bootstrapped&tested (unix{,-m32}) on powerpc64-unknown-linux-gnu.
OK for trunk?
Ciao!
Steven
* lower-subreg.c (resolve_simple_move): If called self-recursive,
do not delete_insn insns that have not yet been emitted, only
unlink them with remove_insn.
* df-scan.c (df_insn_delete): Revert r197492.
OK.
Jeff