From f0f616824ec18dba91f4cc09f24453b530a39bd4 Mon Sep 17 00:00:00 2001 From: Bernd Schmidt Date: Sun, 10 Oct 1999 11:52:53 +0000 Subject: [PATCH] Fix docs for ADDRESS rtx From-SVN: r29888 --- gcc/ChangeLog | 5 +++++ gcc/config/gmicro/gmicro.md | 4 ++-- gcc/md.texi | 23 ----------------------- gcc/rtl.def | 5 +---- 4 files changed, 8 insertions(+), 29 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ab9aef9dee94..7bbd26bc85c9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -3,6 +3,11 @@ Sun Oct 10 13:28:48 1999 Bernd Schmidt * 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 * genrecog.c (add_to_sequence): Move allow_const_int test outside diff --git a/gcc/config/gmicro/gmicro.md b/gcc/config/gmicro/gmicro.md index f6be9c1f9988..ff448cf33187 100644 --- a/gcc/config/gmicro/gmicro.md +++ b/gcc/config/gmicro/gmicro.md @@ -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"))] "" "* { diff --git a/gcc/md.texi b/gcc/md.texi index 53cf7b610393..2910473de026 100644 --- a/gcc/md.texi +++ b/gcc/md.texi @@ -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 diff --git a/gcc/rtl.def b/gcc/rtl.def index 734e81b93032..bb7c5bc09bb7 100644 --- a/gcc/rtl.def +++ b/gcc/rtl.def @@ -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') /* ----------------------------------------------------------------------