http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54022
--- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-07-19 10:21:20 UTC --- Something peculiar here is that the default and another case jumps to the same basic block: switch (D.4089_3) <default: L0, case 0 ... 7: <L3>, case 8: <L0>> [...] # R86s_8 = PHI <0(2), 0(3), 0(6), 1(14)> L0: <L3>: D.4087_7 = D.4084_1 ^ 1; D.4086_9 = D.4087_7 & R86s_8; if (D.4086_9 != 0) goto <bb 8>; else goto <bb 9>;