From: Jeffrey A Law Date: Wed, 18 Apr 2001 03:39:19 +0000 (+0000) Subject: jump.c (mark_all_labels): Canonicalize the tail recursion label attached to CALL_PLAC... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b9c81bcb53beda99725d20443095a0b84220e0f4;p=gcc.git jump.c (mark_all_labels): Canonicalize the tail recursion label attached to CALL_PLACEHOLDER insns. * jump.c (mark_all_labels): Canonicalize the tail recursion label attached to CALL_PLACEHOLDER insns. From-SVN: r41400 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bf154e8fda7..577a11d161d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Tue Apr 17 21:41:11 2001 Jeffrey A Law (law@cygnus.com) + + * jump.c (mark_all_labels): Canonicalize the tail recursion + label attached to CALL_PLACEHOLDER insns. + 2001-04-17 Kaveh R. Ghazi * output.h (dump_flow_info, free_basic_block_vars, diff --git a/gcc/jump.c b/gcc/jump.c index 779972252ac..242692143b1 100644 --- a/gcc/jump.c +++ b/gcc/jump.c @@ -843,6 +843,17 @@ mark_all_labels (f, cross_jump) mark_all_labels (XEXP (PATTERN (insn), 0), cross_jump); mark_all_labels (XEXP (PATTERN (insn), 1), cross_jump); mark_all_labels (XEXP (PATTERN (insn), 2), cross_jump); + + /* Canonicalize the tail recursion label attached to the + CALL_PLACEHOLDER insn. */ + if (XEXP (PATTERN (insn), 3)) + { + rtx label_ref = gen_rtx_LABEL_REF (VOIDmode, + XEXP (PATTERN (insn), 3)); + mark_jump_label (label_ref, insn, cross_jump, 0); + XEXP (PATTERN (insn), 3) = XEXP (label_ref, 0); + } + continue; }