diff options
author | Michael Meissner <meissner@gcc.gnu.org> | 1997-11-20 13:53:42 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 1997-11-20 13:53:42 +0000 |
commit | 72938a4c3a475ab3fc3c137d75faef113276aa4e (patch) | |
tree | 951fdfb3b9b29f06bd79ee72892b23a8c3fcc4c2 /gcc/md.texi | |
parent | dd5e269d22880a0a5cfc965865f826fef4d9059b (diff) | |
download | gcc-72938a4c3a475ab3fc3c137d75faef113276aa4e.zip gcc-72938a4c3a475ab3fc3c137d75faef113276aa4e.tar.gz gcc-72938a4c3a475ab3fc3c137d75faef113276aa4e.tar.bz2 |
Add missing @item
From-SVN: r16597
Diffstat (limited to 'gcc/md.texi')
-rw-r--r-- | gcc/md.texi | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gcc/md.texi b/gcc/md.texi index 1d5d53d..ab89816 100644 --- a/gcc/md.texi +++ b/gcc/md.texi @@ -174,7 +174,9 @@ Operand numbers must be chosen consecutively counting from zero in each instruction pattern. There may be only one @code{match_operand} expression in the pattern for each operand number. Usually operands are numbered in the order of appearance in @code{match_operand} -expressions. +expressions. In the case of a @code{define_expand}, any operand numbers +used only in @code{match_dup} expressions have higher values than all +other operand numbers. @var{predicate} is a string that is the name of a C function that accepts two arguments, an expression and a machine mode. During matching, the @@ -2390,9 +2392,17 @@ nonlocal gotos and a @code{reg} in the other two cases. @cindex @code{allocate_stack} instruction pattern @item @samp{allocate_stack} -Subtract (or add if @code{STACK_GROWS_DOWNWARD} is undefined) operand 0 from +Subtract (or add if @code{STACK_GROWS_DOWNWARD} is undefined) operand 1 from the stack pointer to create space for dynamically allocated data. +Store the resultant pointer to this space into operand 0. If you +are allocating space from the main stack, do this by emitting a +move insn to copy @code{virtual_stack_dynamic_rtx} to operand 0. +If you are allocating the space elsewhere, generate code to copy the +location of the space to operand 0. In the latter case, you must +ensure this space gets freed when the correspoinding space on the main +stack is free. + Do not define this pattern if all that must be done is the subtraction. Some machines require other operations such as stack probes or maintaining the back chain. Define this pattern to emit those @@ -2730,6 +2740,7 @@ converted into the appropriate multiplication by a power of two. @cindex @code{ior}, canonicalization of @cindex @code{and}, canonicalization of @cindex De Morgan's law +@item De`Morgan's Law is used to move bitwise negation inside a bitwise logical-and or logical-or operation. If this results in only one operand being a @code{not} expression, it will be the first one. |