From 19699da4045196c225bcb3a9cac80270617a64e7 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 22 Jul 1999 18:26:40 -0700 Subject: [PATCH] haifa-sched.c (reemit_notes): Tidy. * haifa-sched.c (reemit_notes): Tidy. * sched.c (reemit_notes): Duplicate 1998-08-31 patch to haifa's routine. From-SVN: r28223 --- gcc/ChangeLog | 6 ++++++ gcc/haifa-sched.c | 2 +- gcc/sched.c | 15 ++++++++++++--- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8f24efcf2a2..776115ec109 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Thu Jul 22 18:23:56 1999 Richard Henderson + + * haifa-sched.c (reemit_notes): Tidy. + * sched.c (reemit_notes): Duplicate 1998-08-31 patch to + haifa's routine. + Thu Jul 22 18:21:04 1999 Richard Henderson * explow.c (trunc_int_for_mode): New function. diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c index 9325f61e19d..60b340fa788 100644 --- a/gcc/haifa-sched.c +++ b/gcc/haifa-sched.c @@ -6597,7 +6597,7 @@ reemit_notes (insn, last) } else { - last = emit_note_before (INTVAL (XEXP (note, 0)), last); + last = emit_note_before (note_type, last); remove_note (insn, note); note = XEXP (note, 1); NOTE_BLOCK_NUMBER (last) = INTVAL (XEXP (note, 0)); diff --git a/gcc/sched.c b/gcc/sched.c index e8cd070e45c..c0eb5dc9651 100644 --- a/gcc/sched.c +++ b/gcc/sched.c @@ -2578,16 +2578,25 @@ reemit_notes (insn, last) if (REG_NOTE_KIND (note) == REG_DEAD && GET_CODE (XEXP (note, 0)) == CONST_INT) { - if (INTVAL (XEXP (note, 0)) == NOTE_INSN_SETJMP) + int note_type = INTVAL (XEXP (note, 0)); + if (note_type == NOTE_INSN_SETJMP) { - CONST_CALL_P (emit_note_after (INTVAL (XEXP (note, 0)), insn)) + CONST_CALL_P (emit_note_after (note_type, insn)) = CONST_CALL_P (note); remove_note (insn, note); note = XEXP (note, 1); } + else if (note_type == NOTE_INSN_RANGE_START + || note_type == NOTE_INSN_RANGE_END) + { + last = emit_note_before (note_type, last); + remove_note (insn, note); + note = XEXP (note, 1); + NOTE_RANGE_INFO (last) = XEXP (note, 0); + } else { - last = emit_note_before (INTVAL (XEXP (note, 0)), last); + last = emit_note_before (note_type, last); remove_note (insn, note); note = XEXP (note, 1); NOTE_BLOCK_NUMBER (last) = INTVAL (XEXP (note, 0)); -- 2.30.2