Commit f0f61682 by Bernd Schmidt Committed by Bernd Schmidt

Fix docs for ADDRESS rtx

From-SVN: r29888
parent 17bec8ee
......@@ -3,6 +3,11 @@ Sun Oct 10 13:28:48 1999 Bernd Schmidt <bernds@cygnus.co.uk>
* loop.c (find_and_verify_loops): When looking for a BARRIER, don't
use one before a jump table.
* rtl.def (ADDRESS): Change documentation to match reality.
* md.texi: Don't document it.
* gmicro.md (load address pattern): Use 'p' constraint, delete use
of ADDRESS rtx.
Sun Oct 10 02:41:41 1999 Richard Henderson <rth@cygnus.com>
* genrecog.c (add_to_sequence): Move allow_const_int test outside
......
......@@ -2624,7 +2624,7 @@
/* mova.[whq] 89.08.11 for test M.Yuhara */
;(define_insn ""
; [(set (match_operand:SI 0 "general_operand" "=rm")
; (address (match_operand:SI 1 "address_operand" "p")))]
; (match_operand:SI 1 "address_operand" "p"))]
; ""
; "*
;{
......@@ -2645,7 +2645,7 @@
(define_insn ""
[(set (match_operand:SI 0 "general_operand" "=rm")
(address (match_operand:HI 1 "address_operand" "")))]
(match_operand:HI 1 "address_operand" "p"))]
""
"*
{
......
......@@ -420,29 +420,6 @@ The machine mode @var{m} of @code{match_insn2} works like that of
predicate function, and that function is solely responsible for
deciding whether the expression to be matched ``has'' that mode.
@findex address
@item (address (match_operand:@var{m} @var{n} "address_operand" ""))
This complex of expressions is a placeholder for an operand number
@var{n} in a ``load address'' instruction: an operand which specifies
a memory location in the usual way, but for which the actual operand
value used is the address of the location, not the contents of the
location.
@code{address} expressions never appear in RTL code, only in machine
descriptions. And they are used only in machine descriptions that do
not use the operand constraint feature. When operand constraints are
in use, the letter @samp{p} in the constraint serves this purpose.
@var{m} is the machine mode of the @emph{memory location being
addressed}, not the machine mode of the address itself. That mode is
always the same on a given target machine (it is @code{Pmode}, which
normally is @code{SImode}), so there is no point in mentioning it;
thus, no machine mode is written in the @code{address} expression. If
some day support is added for machines in which addresses of different
kinds of objects appear differently or are used differently (such as
the PDP-10), different formats would perhaps need different machine
modes and these modes might be written in the @code{address}
expression.
@end table
@node Output Template
......
......@@ -289,10 +289,7 @@ DEF_RTL_EXPR(DEFINE_ASM_ATTRIBUTES, "define_asm_attributes", "V", 'x' )
`emit_insn' takes the SEQUENCE apart and makes separate insns. */
DEF_RTL_EXPR(SEQUENCE, "sequence", "E", 'x')
/* Refers to the address of its argument.
This appears only in machine descriptions, indicating that
any expression that would be acceptable as the operand of MEM
should be matched. */
/* Refers to the address of its argument. This is only used in alias.c. */
DEF_RTL_EXPR(ADDRESS, "address", "e", 'm')
/* ----------------------------------------------------------------------
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment