Clarify LEGITIMIZE_RELOAD_ADDRESS issues a tad.
authorRichard Henderson <rth@gcc.gnu.org>
Sat, 4 Apr 1998 18:37:01 +0000 (10:37 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Sat, 4 Apr 1998 18:37:01 +0000 (10:37 -0800)
From-SVN: r18997

gcc/tm.texi

index a5c2729..9f70403 100644 (file)
@@ -4243,21 +4243,26 @@ LEGITIMIZE_RELOAD_ADDRESS appropriately, the intermediate addresses
 generated for adjacent some stack slots can be made identical, and thus
 be shared.
 
-@findex strict_memory_address_p
-The macro definition may use @code{strict_memory_address_p} to test if
-the address has become legitimate.
+@emph{Note}: This macro should be used with caution.  It is necessary
+to know something of how reload works in order to effectively use this,
+and it is quite easy to produce macros that build in too much knowledge
+of reload internals.
 
 @findex push_reload
-It may use @code{push_reload} to indicate parts that need reloading.
-@var{opnum}, @var{type} and @var{ind_levels} are usually suitable to be
-passed unaltered to push_reload.
+The macro definition should use @code{push_reload} to indicate parts that
+need reloading; @var{opnum}, @var{type} and @var{ind_levels} are usually
+suitable to be passed unaltered to @code{push_reload}.
 
-The code generated by this macro should not alter the substructure of
+The code generated by this macro must not alter the substructure of
 @var{x}.  If it transforms @var{x} into a more legitimate form, it
 should assign @var{x} (which will always be a C variable) a new value.
 This also applies to parts that you change indirectly by calling
 @code{push_reload}.
 
+@findex strict_memory_address_p
+The macro definition may use @code{strict_memory_address_p} to test if
+the address has become legitimate.
+
 @findex copy_rtx
 If you want to change only a part of @var{x}, one standard way of doing
 this is to use @code{copy_rtx}.  Note, however, that is unshares only a
@@ -4266,11 +4271,6 @@ top level, you'll need to replace first the top leve
 It is not necessary for this macro to come up with a legitimate
 address;  but often a machine-dependent strategy can generate better code.
 
-@emph{Note}: This macro should be used with caution.  It is necessary
-to know something of how reload works in order to effectively use this,
-and it is quite easy to produce macros that build in too much knowledge
-of reload internals.
-
 @findex GO_IF_MODE_DEPENDENT_ADDRESS
 @item GO_IF_MODE_DEPENDENT_ADDRESS (@var{addr}, @var{label})
 A C statement or compound statement with a conditional @code{goto