diff options
author | Jan Hubicka <jh@suse.cz> | 2004-05-27 00:30:19 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2004-05-26 22:30:19 +0000 |
commit | e4efa9715632519e202f57250b3d8954b17ac9c9 (patch) | |
tree | bcb1158ea662217e049ebecc5fd5f6753def8825 /gcc/cfgcleanup.c | |
parent | dabbc72269ece1873a9bc9a841ed7f3577312da3 (diff) | |
download | gcc-e4efa9715632519e202f57250b3d8954b17ac9c9.zip gcc-e4efa9715632519e202f57250b3d8954b17ac9c9.tar.gz gcc-e4efa9715632519e202f57250b3d8954b17ac9c9.tar.bz2 |
* cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables.
From-SVN: r82296
Diffstat (limited to 'gcc/cfgcleanup.c')
-rw-r--r-- | gcc/cfgcleanup.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c index 10d9e96..9801b57 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; |