aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2009-09-23 15:24:42 -0700
committerRichard Henderson <rth@gcc.gnu.org>2009-09-23 15:24:42 -0700
commit2b4fa409a97f9d398698dff291e4e7176747d6b4 (patch)
tree321b9eb874c077b9b7674eb07850055b8825fc48 /gcc/doc
parent9193312a099c192f134768d0567fb5d29107a796 (diff)
downloadgcc-2b4fa409a97f9d398698dff291e4e7176747d6b4.zip
gcc-2b4fa409a97f9d398698dff291e4e7176747d6b4.tar.gz
gcc-2b4fa409a97f9d398698dff291e4e7176747d6b4.tar.bz2
tm.texi (STATIC_CHAIN, [...]): Remove.
* doc/tm.texi (STATIC_CHAIN, STATIC_CHAIN_INCOMING): Remove. (TARGET_STATIC_CHAIN): Mention that this hook must be used for static chain passed in memory. * system.h (STATIC_CHAIN, STATIC_CHAIN_INCOMING): Poison. * targhooks.c (default_static_chain): Don't handle STATIC_CHAIN, STATIC_CHAIN_INCOMING. Issue a sorry if there's no STATIC_CHAIN_REGNUM defined. * config/picochip/picochip-protos.h: s/class/klass/. * config/picochip/picochip.c (TARGET_STATIC_CHAIN): New. (picochip_static_chain): New. * config/picochip/picochip.h (STATIC_CHAIN): Remove. (STATIC_CHAIN_INCOMING): Remove. * config/xtensa/xtensa.c (TARGET_STATIC_CHAIN): New. (xtensa_static_chain): New. * config/xtensa/xtensa.h (STATIC_CHAIN, STATIC_CHAIN_INCOMING): * Remove. From-SVN: r152104
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/tm.texi34
1 files changed, 13 insertions, 21 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 8a51a9f..27263d9 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -3661,27 +3661,7 @@ not be defined.
The static chain register need not be a fixed register.
If the static chain is passed in memory, these macros should not be
-defined; instead, the next two macros should be defined.
-@end defmac
-
-@defmac STATIC_CHAIN
-@defmacx STATIC_CHAIN_INCOMING
-If the static chain is passed in memory, these macros provide rtx giving
-@code{mem} expressions that denote where they are stored.
-@code{STATIC_CHAIN} and @code{STATIC_CHAIN_INCOMING} give the locations
-as seen by the calling and called functions, respectively. Often the former
-will be at an offset from the stack pointer and the latter at an offset from
-the frame pointer.
-
-@findex stack_pointer_rtx
-@findex frame_pointer_rtx
-@findex arg_pointer_rtx
-The variables @code{stack_pointer_rtx}, @code{frame_pointer_rtx}, and
-@code{arg_pointer_rtx} will have been initialized prior to the use of these
-macros and should be used to refer to those items.
-
-If the static chain is passed in a register, the two previous macros should
-be defined instead.
+defined; instead, the @code{TARGET_STATIC_CHAIN} hook should be used.
@end defmac
@deftypefn {Target Hook} rtx TARGET_STATIC_CHAIN (const_tree @var{fndecl}, bool @var{incoming_p})
@@ -3692,6 +3672,18 @@ attributes that affect the calling conventions of the function and
those calling conventions use different static chain locations.
The default version of this hook uses @code{STATIC_CHAIN_REGNUM} et al.
+
+If the static chain is passed in memory, this hook should be used to
+provide rtx giving @code{mem} expressions that denote where they are stored.
+Often the @code{mem} expression as seen by the caller will be at an offset
+from the stack pointer and the @code{mem} expression as seen by the callee
+will be at an offset from the frame pointer.
+@findex stack_pointer_rtx
+@findex frame_pointer_rtx
+@findex arg_pointer_rtx
+The variables @code{stack_pointer_rtx}, @code{frame_pointer_rtx}, and
+@code{arg_pointer_rtx} will have been initialized and should be used
+to refer to those items.
@end deftypefn
@defmac DWARF_FRAME_REGISTERS