> > But your comment made me realize there is a major bug.
> >
> > if_convertible_switch_p also needs to check that that the labels don't fall
> > through, so the the flow graph is diamond shape. Need some easy way to
> > verify that.
>
> Do we verify this for if()s? That is,
No we do not. After some consideration it isn't a bug at all.
>
> if (i)
> {
> ...
> goto fallthru;
> }
> else
> {
> fallthru:
> ...
> }
>
> For ifs we seem to add the predicate to both edges even in the degenerate
> case.
Yes we do.
-Andi