[Bug target/80125] [7 Regression] r246297 causes segfault in reg_used_between_p()

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Mar 21 09:25:00 GMT 2017


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80125

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
One thing is that I wonder what is the point in calling reg_used_between_p if
all_adjacent, then there are no insns in between.
And, if !all_adjacent, I'd hope that !PREV_INSN (succ) implies NEXT_INSN (succ)
== succ2 and we should then check reg_used_between_p between insn and succ2.
|| (succ2 && reg_used_between_p (dest, succ, succ2))
seems redundant with the already existing
      || (!all_adjacent
          && ((succ2
               && (reg_used_between_p (dest, succ2, i3)
                   || reg_used_between_p (dest, succ, succ2)))
where we already check exactly the same thing (only guarded with !all_adjacent,
but if that isn't true, then there are no active insns in between those two).


More information about the Gcc-bugs mailing list