This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/17482] [4.0 Regression] GCSE after reload replacing changing instructions
- From: "graham dot stott at btinternet dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Sep 2004 19:00:43 -0000
- Subject: [Bug rtl-optimization/17482] [4.0 Regression] GCSE after reload replacing changing instructions
- References: <20040914180310.17482.dje@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From graham dot stott at btinternet dot com 2004-09-15 19:00 -------
Subject: Re: [4.0 Regression] GCSE after reload replacing changing instructions
Steven,
One thing that stands out from looking at the code is the routines
record_last_set_info and mark_set don't appear to be taking any note
of any REG_INC notes that may be present within the MEM's
Should the existing code:
if (REG_P (dest))
record_last_reg_set_info (insn, REGNO (dest));
else if (MEM_P (dest))
record_last_mem_set_info (insn);
contain this following check for registers mentioned in REG_INC notes?
note = find_reg_note (insn, REG_INC, NULL_RTX);
if (note)
record_last_reg_set_info (insn, REGNO (XEXP (note, 0)));
Graham
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17482