mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-31 15:31:11 +08:00
tm.texi (REGNO_OK_FOR_BASE_P, [...]): Mention strict/nonstrict difference.
2009-04-25 Paolo Bonzini <bonzini@gnu.org> * doc/tm.texi (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_REG_BASE_P, REGNO_MODE_CODE_OK_FOR_BASE_P, REGNO_OK_FOR_INDEX_P): Mention strict/nonstrict difference. From-SVN: r146765
This commit is contained in:
parent
496a4ef59d
commit
1c62e8f226
@ -1,3 +1,9 @@
|
||||
2009-04-25 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* doc/tm.texi (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P,
|
||||
REGNO_MODE_OK_FOR_REG_BASE_P, REGNO_MODE_CODE_OK_FOR_BASE_P,
|
||||
REGNO_OK_FOR_INDEX_P): Mention strict/nonstrict difference.
|
||||
|
||||
2009-04-25 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.
|
||||
|
@ -2503,9 +2503,18 @@ added to another register (as well as added to a displacement).
|
||||
|
||||
@defmac REGNO_OK_FOR_BASE_P (@var{num})
|
||||
A C expression which is nonzero if register number @var{num} is
|
||||
suitable for use as a base register in operand addresses. It may be
|
||||
either a suitable hard register or a pseudo register that has been
|
||||
allocated such a hard register.
|
||||
suitable for use as a base register in operand addresses.
|
||||
Like @code{GO_IF_LEGITIMATE_ADDRESS}, this macro should also
|
||||
exist in strict or non-strict variants. Both variants behave
|
||||
the same for hard register; for pseudos, the strict variant will
|
||||
pass only those that have been allocated to a valid hard registers,
|
||||
while the non-strict variant will pass all pseudos.
|
||||
|
||||
@findex REG_OK_STRICT
|
||||
Compiler source files that want to use the strict variant of this and
|
||||
other macros define the macro @code{REG_OK_STRICT}. You should use an
|
||||
@code{#ifdef REG_OK_STRICT} conditional to define the strict variant in
|
||||
that case and the non-strict variant otherwise.
|
||||
@end defmac
|
||||
|
||||
@defmac REGNO_MODE_OK_FOR_BASE_P (@var{num}, @var{mode})
|
||||
@ -2518,6 +2527,7 @@ you define this macro, the compiler will use it instead of
|
||||
addresses that appear outside a @code{MEM}, i.e., as an
|
||||
@code{address_operand}.
|
||||
|
||||
This macro also has strict and non-strict variants.
|
||||
@end defmac
|
||||
|
||||
@defmac REGNO_MODE_OK_FOR_REG_BASE_P (@var{num}, @var{mode})
|
||||
@ -2530,6 +2540,8 @@ than other base register uses.
|
||||
|
||||
Use of this macro is deprecated; please use the more general
|
||||
@code{REGNO_MODE_CODE_OK_FOR_BASE_P}.
|
||||
|
||||
This macro also has strict and non-strict variants.
|
||||
@end defmac
|
||||
|
||||
@defmac REGNO_MODE_CODE_OK_FOR_BASE_P (@var{num}, @var{mode}, @var{outer_code}, @var{index_code})
|
||||
@ -2542,6 +2554,8 @@ address, @code{ADDRESS} for something that occurs in an
|
||||
corresponding index expression if @var{outer_code} is @code{PLUS};
|
||||
@code{SCRATCH} otherwise. The mode may be @code{VOIDmode} for addresses
|
||||
that appear outside a @code{MEM}, i.e., as an @code{address_operand}.
|
||||
|
||||
This macro also has strict and non-strict variants.
|
||||
@end defmac
|
||||
|
||||
@defmac REGNO_OK_FOR_INDEX_P (@var{num})
|
||||
@ -2558,6 +2572,8 @@ labeling is used must fit the machine's constraints of which registers
|
||||
may serve in each capacity. The compiler will try both labelings,
|
||||
looking for one that is valid, and will reload one or both registers
|
||||
only if neither labeling works.
|
||||
|
||||
This macro also has strict and non-strict variants.
|
||||
@end defmac
|
||||
|
||||
@defmac PREFERRED_RELOAD_CLASS (@var{x}, @var{class})
|
||||
|
Loading…
x
Reference in New Issue
Block a user