diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2000-02-27 14:06:15 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2000-02-27 09:06:15 -0500 |
commit | 4e37e57d144fc4d905ae6b235fb637ce259e2c38 (patch) | |
tree | b296a9a09e057ac41c1f2bc8c6596c7096f4dffe /gcc | |
parent | b8d12d7997dffb2ff0ab5849fa1a41905aae1bd2 (diff) | |
download | gcc-4e37e57d144fc4d905ae6b235fb637ce259e2c38.zip gcc-4e37e57d144fc4d905ae6b235fb637ce259e2c38.tar.gz gcc-4e37e57d144fc4d905ae6b235fb637ce259e2c38.tar.bz2 |
cse.c (cse_insn): Delete dead code involving tablejump.
* cse.c (cse_insn): Delete dead code involving tablejump.
Pass CODE_LABEL, not LABEL_REF to gen_jump and reset INSN_CODE.
From-SVN: r32219
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/cse.c | 14 |
2 files changed, 5 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc3d71d..56925d2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ Sun Feb 27 07:44:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + * cse.c (cse_insn): Delete dead code involving tablejump. + Pass CODE_LABEL, not LABEL_REF to gen_jump and reset INSN_CODE. + * Makefile.in (libcpp.a): Start by deleting it. 2000-02-27 Alexandre Oliva <oliva@lsd.ic.unicamp.br> @@ -5197,17 +5197,6 @@ cse_insn (insn, libcall_insn) || (GET_CODE (trial) == LABEL_REF && ! condjump_p (insn)))) { - /* If TRIAL is a label in front of a jump table, we are - really falling through the switch (this is how casesi - insns work), so we must branch around the table. */ - if (GET_CODE (trial) == CODE_LABEL - && NEXT_INSN (trial) != 0 - && GET_CODE (NEXT_INSN (trial)) == JUMP_INSN - && (GET_CODE (PATTERN (NEXT_INSN (trial))) == ADDR_DIFF_VEC - || GET_CODE (PATTERN (NEXT_INSN (trial))) == ADDR_VEC)) - - trial = gen_rtx_LABEL_REF (Pmode, get_label_after (trial)); - if (trial == pc_rtx) { SET_SRC (sets[i].rtl) = trial; @@ -5215,7 +5204,8 @@ cse_insn (insn, libcall_insn) break; } - PATTERN (insn) = gen_jump (trial); + PATTERN (insn) = gen_jump (XEXP (trial, 0)); + INSN_CODE (insn) = -1; cse_jumps_altered = 1; break; } |