diff options
author | Steven Bosscher <steven@gcc.gnu.org> | 2013-11-05 21:57:45 +0000 |
---|---|---|
committer | Steven Bosscher <steven@gcc.gnu.org> | 2013-11-05 21:57:45 +0000 |
commit | 592a16fca09f8a595037e8b693f698a95390c899 (patch) | |
tree | 919b61c9112314164efeda47c891e8848b6542a9 /gcc/rtlanal.c | |
parent | e8ff5196a89bdd14deca4ecb5d07d60cfd081b11 (diff) | |
download | gcc-592a16fca09f8a595037e8b693f698a95390c899.zip gcc-592a16fca09f8a595037e8b693f698a95390c899.tar.gz gcc-592a16fca09f8a595037e8b693f698a95390c899.tar.bz2 |
rtlanal.c (tablejump_p): Expect a JUMP_TABLE_DATA to always follow immediately after a label for a...
* rtlanal.c (tablejump_p): Expect a JUMP_TABLE_DATA to always follow
immediately after a label for a tablejump pattern.
* config/arm/arm.c (is_jump_table): Remove.
(create_fix_barrier): Use tablejump_p instead.
(arm_reorg): Likewise.
(thumb1_output_casesi): Expect JUMP_TABLE_DATA to always be NEXT_INSN.
(thumb2_output_casesi): Likewise.
* config/aarch64/aarch64.c (aarch64_output_casesi): Likewise.
* config/sh/sh.md (casesi_worker_1, casesi_worker_2,
casesi_shift_media, casesi_load_media): Likewise.
* config/iq2000/iq2000.md: Likewise (in anonymous define_insn).
* config/microblaze/microblaze.md: Likewise.
From-SVN: r204424
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 9769b69..b9f3e2b 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -2742,10 +2742,9 @@ tablejump_p (const_rtx insn, rtx *labelp, rtx *tablep) label = JUMP_LABEL (insn); if (label != NULL_RTX && !ANY_RETURN_P (label) - && (table = next_active_insn (label)) != NULL_RTX + && (table = NEXT_INSN (label)) != NULL_RTX && JUMP_TABLE_DATA_P (table)) { - gcc_assert (table == NEXT_INSN (label)); if (labelp) *labelp = label; if (tablep) |