This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Bug rtl-optimization/17482] [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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]