]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
rtl.def (CALL_PLACEHOLDER): New rtx code.
authorJeffrey A Law <law@cygnus.com>
Sun, 24 Jan 1999 07:13:55 +0000 (07:13 +0000)
committerJeff Law <law@gcc.gnu.org>
Sun, 24 Jan 1999 07:13:55 +0000 (00:13 -0700)

        * rtl.def (CALL_PLACEHOLDER): New rtx code.

From-SVN: r24843

gcc/ChangeLog
gcc/rtl.def

index 776dcdb0742ac225e9484e299822403692efccc8..f06b6c2baed0b6a489d616b4dc5c9a0445cd424a 100644 (file)
@@ -1,3 +1,7 @@
+Sun Jan 24 08:07:59 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * rtl.def (CALL_PLACEHOLDER): New rtx code.
+
 Sun Jan 24 21:24:43 1999  Michael Hayes  <m.hayes@elec.canterbury.ac.nz>
 
        * config/c4x/c4x.c (c4x_emit_move_sequence, c4x_encode_section_info):
index 970a937f8976e4807df8e1e8aceb92e11c26a5a8..7b8c84571f01cad1ede1388ee10a3f1f5ebf6a66 100644 (file)
@@ -855,6 +855,24 @@ DEF_RTL_EXPR(RANGE_LIVE, "range_live", "bi", 'x')
    eliminated by the first CSE pass. */
 DEF_RTL_EXPR(CONSTANT_P_RTX, "constant_p_rtx", "e", 'x')
 
+/* A placeholder for a CALL_INSN which may be turned into a normal call,
+   a sibling (tail) call or tail recursion.
+
+   Immediately after RTL generation, this placeholder will be replaced
+   by the insns to perform the call, sibcall or tail recursion.
+
+   This RTX has 4 operands.  The first three are lists of instructions to
+   perform the call as a normal call, sibling call and tail recursion
+   respectively.  The latter two lists may be NULL, the first may never
+   be NULL.
+
+   The last operand is the tail recursion CODE_LABEL, which may be NULL if no 
+   potential tail recursive calls were found.
+
+   The tail recursion label is needed so that we can clear LABEL_PRESERVE_P
+   after we select a call method.  */
+DEF_RTL_EXPR(CALL_PLACEHOLDER, "call_placeholder", "uuuu", 'x')
+
 /*
 Local variables:
 mode:c