On Fri, Oct 13, 2017 at 6:38 AM, Jan Hubicka <hubi...@ucw.cz> wrote:
> Hi,
> this patch enables check that no edge probabilities are missing.

This caused a bootstrap failure on aarch64-linux-gnu with go enabled.
But I see you have disabled the code for now.

Just for reference the failure:
../../../gcc/libgo/go/unicode/letter.go
../../../gcc/libgo/go/unicode/tables.go -o unicode.o >/dev/null 2>&1
../../../gcc/libgo/go/runtime/panic.go: In function ‘runtime.gopanic’:
../../../gcc/libgo/go/runtime/panic.go:408:1: error: Uninitialized
probability of edge 103->128
 func gopanic(e interface{}) {
 ^
during RTL pass: subreg1
../../../gcc/libgo/go/runtime/panic.go:408:1: internal compiler error:
verify_flow_info failed
0x71f3b7 verify_flow_info()
../../gcc/gcc/cfghooks.c:267
0xa9402b execute_function_todo
../../gcc/gcc/passes.c:2006
0xa94de3 execute_todo
../../gcc/gcc/passes.c:2048
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Thanks,
Andrew


>
> Honza
>
>         * cfghooks.c (verify_flow_info): Check that edge probabilities are
>         set.
>
> Index: cfghooks.c
> ===================================================================
> --- cfghooks.c  (revision 253694)
> +++ cfghooks.c  (working copy)
> @@ -160,6 +161,13 @@ verify_flow_info (void)
>                      e->src->index, e->dest->index);
>               err = 1;
>             }
> +         if (profile_status_for_fn (cfun) >= PROFILE_GUESSED
> +             && !e->probability.initialized_p ())
> +           {
> +             error ("Uninitialized probability of edge %i->%i", 
> e->src->index,
> +                    e->dest->index);
> +             err = 1;
> +           }
>           if (!e->probability.verify ())
>             {
>               error ("verify_flow_info: Wrong probability of edge %i->%i",

Reply via email to