https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61641

--- Comment #6 from John David Anglin <danglin at gcc dot gnu.org> ---
The patch does what it's supposed to but it's not right:

.LVL58:
        comib,<> 0,%r28,.L70
        nop
.L74:
.L80:
        .begin_brtab
        .word .L73-.L80
        .word .L81-.L80
        .word .L74-.L80
        .word .L84-.L80
        .word .L74-.L80
        .word .L74-.L80
        .word .L74-.L80
        .word .L72-.L80
        .end_brtab
.L72:
.LBE104:
.LBE103:
.LBB105:
.LBB106:
        .loc 2 228 0
        ldi 3,%r28

The branch table is in the text section.  It appears from the above
that the execution flow can drop into the branch table.  So, either
removal of the associated casesi insn was wrong or the branch table
needs to be removed when the table label is removed.

Reply via email to