diff options
author | jrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-01-09 10:35:48 +0000 |
---|---|---|
committer | jrv <jrv@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-01-09 10:35:48 +0000 |
commit | cf03b15bfe4434751445aebd9bc808e4e6848af9 (patch) | |
tree | 9fa5add9e587b4853b4ca3ce41ad96d73e9637a1 /gcc/jump.c | |
parent | 46168c9bb2716c7537b673f3e1cd112ea085ba34 (diff) | |
download | ppe42-gcc-cf03b15bfe4434751445aebd9bc808e4e6848af9.tar.gz ppe42-gcc-cf03b15bfe4434751445aebd9bc808e4e6848af9.zip |
(follow_jumps): Don't follow tablejumps.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@6361 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/jump.c')
-rw-r--r-- | gcc/jump.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/jump.c b/gcc/jump.c index 9e0230fb05e..cca2c0a8677 100644 --- a/gcc/jump.c +++ b/gcc/jump.c @@ -2925,6 +2925,12 @@ follow_jumps (label) /* If we have found a cycle, make the insn jump to itself. */ if (JUMP_LABEL (insn) == label) return label; + + tem = next_active_insn (JUMP_LABEL (insn)); + if (tem && (GET_CODE (PATTERN (tem)) == ADDR_VEC + || GET_CODE (PATTERN (tem)) == ADDR_DIFF_VEC)) + break; + value = JUMP_LABEL (insn); } if (depth == 10) |