On 3/19/19 2:02 AM, Martin Liška wrote:
> Hi.
>
> When calling set_even_probabilities, the function assumes that an edge
> can't live in both sets ({un,}likely_edges). When such situation happens,
> clear just the sets.
>
> Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
>
> Ready to be installed?
> Thanks,
> Martin
>
> gcc/ChangeLog:
>
> 2019-03-18 Martin Liska <[email protected]>
>
> PR middle-end/89737
> * predict.c (combine_predictions_for_bb): Empty likely_edges and
> unlikely_edges if there's an edge that belongs to both these sets.
>
> gcc/testsuite/ChangeLog:
>
> 2019-03-18 Martin Liska <[email protected]>
>
> PR middle-end/89737
> * gcc.dg/pr89737.c: New test.
But is having the edge in both sets a valid state? You know this code
better than I, so I'll go with your recommendation here.
jeff