From a8fc41afdd494825e0df0225a1e60f23a43f309a Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Tue, 3 Nov 1992 14:57:52 -0500 Subject: [PATCH] (jump_optimize): Ensure operand of REG_NOTES is an INSN; otherwise, we might try to read outside allocated memory. From-SVN: r2684 --- gcc/jump.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gcc/jump.c b/gcc/jump.c index 63f5313..5ed2828 100644 --- a/gcc/jump.c +++ b/gcc/jump.c @@ -837,6 +837,7 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan) && this_is_condjump && ! this_is_simplejump && BRANCH_COST >= 3 && (temp = next_nonnote_insn (insn)) != 0 + && GET_CODE (temp) == INSN && REG_NOTES (temp) == 0 && (reallabelprev == temp || ((temp2 = next_active_insn (temp)) != 0 @@ -874,8 +875,10 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan) && this_is_condjump && ! this_is_simplejump && BRANCH_COST >= 4 && (temp = next_nonnote_insn (insn)) != 0 + && GET_CODE (temp) == INSN && REG_NOTES (temp) == 0 && (temp3 = next_nonnote_insn (temp)) != 0 + && GET_CODE (temp3) == INSN && REG_NOTES (temp3) == 0 && (reallabelprev == temp3 || ((temp2 = next_active_insn (temp3)) != 0 @@ -920,8 +923,10 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan) && this_is_condjump && ! this_is_simplejump && BRANCH_COST >= 4 && (temp = next_nonnote_insn (insn)) != 0 + && GET_CODE (temp) == INSN && REG_NOTES (temp) == 0 && (temp3 = next_nonnote_insn (temp)) != 0 + && GET_CODE (temp3) == INSN && REG_NOTES (temp3) == 0 && (reallabelprev == temp3 || ((temp2 = next_active_insn (temp3)) != 0 -- 2.7.4