From: Jan Hubicka Date: Wed, 26 May 2004 22:30:19 +0000 (+0200) Subject: * cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e4efa9715632519e202f57250b3d8954b17ac9c9;p=gcc.git * cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables. From-SVN: r82296 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1fad8d51b1f..167feba2e2f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2004-05-27 Jan Hubicka + + * cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables. + 2004-05-27 Jan Hubicka * i386.md (UNSPECV_EH_RETURN): Kill. @@ -8,7 +12,6 @@ * cfgcleanup.c (try_forward_edges): Do not check loop structure when not loop optimizing. - (try_optimize_cfg): Do not merge across jumptables. 2004-05-26 Jan Hubicka diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c index 10d9e96c135..9801b570284 100644 --- a/gcc/cfgcleanup.c +++ b/gcc/cfgcleanup.c @@ -1938,7 +1938,9 @@ try_optimize_cfg (int mode) && (GET_CODE (BB_END (b)) != JUMP_INSN || (reload_completed ? simplejump_p (BB_END (b)) - : onlyjump_p (BB_END (b)))) + : (onlyjump_p (BB_END (b)) + && !tablejump_p (BB_END (b), + NULL, NULL)))) && (next = merge_blocks_move (s, b, c, mode))) { b = next;