Hi!

I'll try to read it in more details later today, but one thing I've noticed:

On Thu, Dec 14, 2017 at 11:51:29PM -0200, Alexandre Oliva wrote:
> @@ -5380,7 +5410,6 @@ verify_gimple_in_cfg (struct function *fn, bool 
> verify_nothrow)
>         err |= err2;
>       }
>  
> -      bool label_allowed = true;
>        for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
>       {
>         gimple *stmt = gsi_stmt (gsi);
> @@ -5397,19 +5426,6 @@ verify_gimple_in_cfg (struct function *fn, bool 
> verify_nothrow)
>             err2 = true;
>           }
>  
> -       /* Labels may be preceded only by debug markers, not debug bind
> -          or source bind or any other statements.  */
> -       if (gimple_code (stmt) == GIMPLE_LABEL)
> -         {
> -           if (!label_allowed)
> -             {
> -               error ("gimple label in the middle of a basic block");
> -               err2 = true;
> -             }
> -         }
> -       else if (!gimple_debug_begin_stmt_p (stmt))
> -         label_allowed = false;
> -

Please don't revert the above 2 hunks.  Instead just remove the
> -       else if (!gimple_debug_begin_stmt_p (stmt))
> -         label_allowed = false;
lines only from it and adjust the comment.  We want to verify there are
no statements before labels.

        Jakub

Reply via email to