expr.c (emit_single_push_insn): Add call to push expander.
authorJan Hubicka <hubicka@gcc.gnu.org>
Fri, 20 Jul 2001 20:10:42 +0000 (20:10 +0000)
committerJan Hubicka <hubicka@gcc.gnu.org>
Fri, 20 Jul 2001 20:10:42 +0000 (20:10 +0000)
* expr.c (emit_single_push_insn): Add call to push expander.
* expr.h (optab_index): Add OTI_push
(push_optab): New constant.
* genopinit.c (optabs): Add push_optab.
* optabs.c (init_optab): Init push optab.
* md.texi (push??1): Document

From-SVN: r44211

gcc/doc/md.texi

index a5db6c6ccb8335a1ca3b5f0b67487b4e3402618a..59db56bb6778ea27f8c3b17b220f7ae19fdfe188 100644 (file)
@@ -2125,6 +2125,14 @@ into consecutive memory locations.  Operand 0 is the first of the
 consecutive memory locations, operand 1 is the first register, and
 operand 2 is a constant: the number of consecutive registers.
 
+@cindex @code{push@var{m}} instruction pattern
+@item @samp{push@var{m}}
+Output an push instruction.  Operand 0 is value to push.  Used only when
+@code{PUSH_ROUNDING} is defined.  For historical reason, this pattern may be
+missing and in such case an @code{mov} expander is used instead, with a
+@code{MEM} expression forming the push operation.  The @cpde{mov} expander
+method is deprecated.
+
 @cindex @code{add@var{m}3} instruction pattern
 @item @samp{add@var{m}3}
 Add operand 2 and operand 1, storing the result in operand 0.  All operands