[Bug rtl-optimization/63348] [5 Regression] gcc.dg/pr43670.c fail on MIPS

ubizjak at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Sep 24 08:17:00 GMT 2014


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

--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to baoshan from comment #1)
> I believe this regression is introduced by the code for cleanup_barriers()
> in jump.c of patch https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02164.html:
> 
> The call insn was followed by a barrier insn, the try_split() would emit
> another barrier insn after call insn for this case( I don't know why, please
> let me know the reason); after applying that patch and with option "-g"
> there would be a note instruction between the call and barrier insns which
> result no barrier insn is emitted by try_split().

try_split should skip eventual note after the call when looking for barrier. It
looks to me that try_split blindly assumes that next insn is the barrier, which
is not the case from the introduction of debug locations.


More information about the Gcc-bugs mailing list