On 01/22/2016 12:44 AM, Andreas Krebbel wrote:
On 01/22/2016 12:10 AM, Jeff Law wrote:
On 01/21/2016 03:05 AM, Andreas Krebbel wrote:
On 01/02/2016 08:16 PM, Marcin Kościelnicki wrote:
When an unconditional jump with side effects targets an immediately
following label, rtl_tidy_fallthru_edge is called.  Since it has side
effects, it doesn't remove the jump, but the label is still marked
as fallthru.  This later causes a verification error.  Do nothing in this
case instead.

gcc/ChangeLog:

        * cfgrtl.c (rtl_tidy_fallthru_edge): Bail for unconditional jumps
        with side effects.

The change looks ok to me (although I'm not able to approve it). Could you 
please run regressions
tests on x86_64 with that change?

Perhaps a short comment in the code would be good.
I think the patch is technically fine, the question is does it fix a
visible bug?  I read the series as new feature enablement so I put this
patch into my gcc7 queue.

We need the patch for the S/390 split-stack implementation which we would like 
to see in GCC 6.  I'm
aware that this isn't stage 3 material but people seem to have reasons to 
really want split stack on
S/390 asap and we would have to backport this feature anyway. Therefore I would 
prefer to have it in
the official release already. That's the only common code change we would need 
for that.

I've started a bootstrap and regression test for the patch also on Power.

Do you see a chance we can get this into GCC 6?
So I think it'd largely depend on what you do with the s390 specific bits -- if you decide to drop those in (ISTM that's your call), then I think adding the cfgrtl patch is probably the wise thing to do. So consider it approved for gcc-6 if/when you decide to go forward with the s390 specific bits.

FWIW, the PA might run afoul of the code you're fixing as well. It's got add[i]b,tr and mov[i]b,tr which are unconditional jumps with other side effects. We never really used them all that much and once the PA8000 series came out, they were actually a performance lose, so they were disabled on the "modern" PA machines.

Jeff

Reply via email to