aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorMax Filippov <jcmvbkbc@gmail.com>2015-03-03 15:04:02 +0000
committerMax Filippov <jcmvbkbc@gcc.gnu.org>2015-03-03 15:04:02 +0000
commit2e612c470d9deead7b4d8b6042ac1b711c818766 (patch)
tree7f59cfef10ac3781fc4d997331364492938faf6f /gcc/doc
parent9dd44d1c8021214d55491aefebe04d8647cae9d0 (diff)
downloadgcc-2e612c470d9deead7b4d8b6042ac1b711c818766.zip
gcc-2e612c470d9deead7b4d8b6042ac1b711c818766.tar.gz
gcc-2e612c470d9deead7b4d8b6042ac1b711c818766.tar.bz2
Turn RETURN_ADDR_IN_PREVIOUS_FRAME into C expression
This allows a target to support both windowed and non-windowed ABI. 2015-03-03 Max Filippov <jcmvbkbc@gmail.com> gcc/ * builtins.c (expand_builtin_return_addr): Add RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove surrounding #ifdef. * config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change definition to 1. * config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Likewise. * defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if undefined. * doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update paragraph. From-SVN: r221150
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/tm.texi.in7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index 16d5df7..8d6dfbc 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -2650,7 +2650,7 @@ A C expression whose value is RTL representing the value of the return
address for the frame @var{count} steps up from the current frame, after
the prologue. @var{frameaddr} is the frame pointer of the @var{count}
frame, or the frame pointer of the @var{count} @minus{} 1 frame if
-@code{RETURN_ADDR_IN_PREVIOUS_FRAME} is defined.
+@code{RETURN_ADDR_IN_PREVIOUS_FRAME} is nonzero.
The value of the expression must always be the correct address when
@var{count} is zero, but may be @code{NULL_RTX} if there is no way to
@@ -2658,8 +2658,9 @@ determine the return address of other frames.
@end defmac
@defmac RETURN_ADDR_IN_PREVIOUS_FRAME
-Define this if the return address of a particular stack frame is accessed
-from the frame pointer of the previous stack frame.
+Define this macro to nonzero value if the return address of a particular
+stack frame is accessed from the frame pointer of the previous stack
+frame. The zero default for this macro is suitable for most ports.
@end defmac
@defmac INCOMING_RETURN_ADDR_RTX