===================================================================
@@ -12022,6 +12022,16 @@
/* Make sure that we found a place to insert the jump. */
gcc_assert (selected);
+ /* Make sure we do not split a call and its corresponding
+ CALL_ARG_LOCATION note. */
+ if (CALL_P (selected))
+ {
+ rtx next = NEXT_INSN (selected);
+ if (next && NOTE_P (next)
+ && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
+ selected = next;
+ }
+
/* Create a new JUMP_INSN that branches around a barrier. */
from = emit_jump_insn_after (gen_jump (label), selected);
JUMP_LABEL (from) = label;