]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
tm.texi (ARG_POINTER_CFA_OFFSET): Document new default.
authorPaul Brook <paul@codesourcery.com>
Tue, 22 Dec 2009 12:24:32 +0000 (12:24 +0000)
committerPaul Brook <pbrook@gcc.gnu.org>
Tue, 22 Dec 2009 12:24:32 +0000 (12:24 +0000)
2009-12-22  Paul Brook <paul@codesourcery.com>

gcc/
* doc/tm.texi (ARG_POINTER_CFA_OFFSET): Document new default.
* defaults.h (ARG_POINTER_CFA_OFFSET): Add pretend_args_size.
* config/spu/spu.h (ARG_POINTER_CFA_OFFSET): Add pretend_args_size.

From-SVN: r155396

gcc/ChangeLog
gcc/config/spu/spu.h
gcc/defaults.h
gcc/doc/tm.texi

index 5176a32ea2ac3e12f919ad356703c6c93c1ecc73..ff75266888db1b86ef7c63c6883ffd418b8411d3 100644 (file)
@@ -1,3 +1,9 @@
+2009-12-22  Paul Brook <paul@codesourcery.com>
+
+       * doc/tm.texi (ARG_POINTER_CFA_OFFSET): Document new default.
+       * defaults.h (ARG_POINTER_CFA_OFFSET): Add pretend_args_size.
+       * config/spu/spu.h (ARG_POINTER_CFA_OFFSET): Add pretend_args_size.
+
 2009-12-21  Brian Hackett  <bhackett1024@gmail.com>
 
        * plugin.def: Rename pre-genericize event.
index 6d471cea333277bec99e96e4c3604244798c2004..6d6a3061a631fbd633ab4a6ba982076b1584279b 100644 (file)
@@ -272,7 +272,8 @@ targetm.resolve_overloaded_builtin = spu_resolve_overloaded_builtin;        \
 
 #define DWARF_FRAME_RETURN_COLUMN DWARF_FRAME_REGNUM (LINK_REGISTER_REGNUM)
 
-#define ARG_POINTER_CFA_OFFSET(FNDECL) (-STACK_POINTER_OFFSET)
+#define ARG_POINTER_CFA_OFFSET(FNDECL) \
+  (crtl->args.pretend_args_size - STACK_POINTER_OFFSET)
 
 \f
 /* Stack Checking */
index 0363a460e061bdd7d01ffbd2e1d105c7d05c9fec..8ca889684948b8a4dfffb3dba9980254b9c85df3 100644 (file)
@@ -1086,7 +1086,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 
 /* On most machines, the CFA coincides with the first incoming parm.  */
 #ifndef ARG_POINTER_CFA_OFFSET
-#define ARG_POINTER_CFA_OFFSET(FNDECL) FIRST_PARM_OFFSET (FNDECL)
+#define ARG_POINTER_CFA_OFFSET(FNDECL) \
+  (FIRST_PARM_OFFSET (FNDECL) + crtl->args.pretend_args_size)
 #endif
 
 /* On most machines, we use the CFA as DW_AT_frame_base.  */
index 5616b4809879617b2d7f056914380c7a72976bd8..4ae9e2e7f9fb462ad7b9bd99447ce4607bf245f3 100644 (file)
@@ -3340,7 +3340,8 @@ final value should coincide with that calculated by
 @code{INCOMING_FRAME_SP_OFFSET}.  Which is unfortunately not usable
 during virtual register instantiation.
 
-The default value for this macro is @code{FIRST_PARM_OFFSET (fundecl)},
+The default value for this macro is
+@code{FIRST_PARM_OFFSET (fundecl) + crtl->args.pretend_args_size},
 which is correct for most machines; in general, the arguments are found
 immediately before the stack frame.  Note that this is not the case on
 some targets that save registers into the caller's frame, such as SPARC