This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[committed] PR 61243: Missing copy of CROSSING_JUMP_P


My CROSSING_JUMP_P patch didn't handle insns that were copied by
emit_copy_of_insn_after, which previously would copy REG_CROSSING_JUMP
notes by virtue of them being != REG_LABEL_OPERAND.

This patch adds the missing copy.  Tested with profiledbootstrap on
x86_64-linux-gnu.  Committed as obvious.

Thanks,
Richard


gcc/
	PR rtl-optimization/61243
	* emit-rtl.c (emit_copy_of_insn_after): Copy CROSSING_JUMP_P.

Index: gcc/emit-rtl.c
===================================================================
--- gcc/emit-rtl.c	2014-05-20 20:20:24.525295969 +0100
+++ gcc/emit-rtl.c	2014-05-20 22:18:18.894580150 +0100
@@ -6027,6 +6027,7 @@ emit_copy_of_insn_after (rtx insn, rtx a
 
     case JUMP_INSN:
       new_rtx = emit_jump_insn_after (copy_insn (PATTERN (insn)), after);
+      CROSSING_JUMP_P (new_rtx) = CROSSING_JUMP_P (insn);
       break;
 
     case DEBUG_INSN:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]