OSDN Git Service

* expr.c (emit_single_push_insn): Add call to push expander.
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 20 Jul 2001 20:10:42 +0000 (20:10 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 20 Jul 2001 20:10:42 +0000 (20:10 +0000)
* 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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44211 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/doc/md.texi

index a5db6c6..59db56b 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