tm.texi (ARG_POINTER_CFA_OFFSET): Document new default.

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
This commit is contained in:
Paul Brook 2009-12-22 12:24:32 +00:00 committed by Paul Brook
parent ac2e5c890a
commit d17c29c35f
4 changed files with 12 additions and 3 deletions

View 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> 2009-12-21 Brian Hackett <bhackett1024@gmail.com>
* plugin.def: Rename pre-genericize event. * plugin.def: Rename pre-genericize event.

View 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 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)
/* Stack Checking */ /* Stack Checking */

View 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. */ /* On most machines, the CFA coincides with the first incoming parm. */
#ifndef ARG_POINTER_CFA_OFFSET #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 #endif
/* On most machines, we use the CFA as DW_AT_frame_base. */ /* On most machines, we use the CFA as DW_AT_frame_base. */

View File

@ -3340,7 +3340,8 @@ final value should coincide with that calculated by
@code{INCOMING_FRAME_SP_OFFSET}. Which is unfortunately not usable @code{INCOMING_FRAME_SP_OFFSET}. Which is unfortunately not usable
during virtual register instantiation. 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 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 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 some targets that save registers into the caller's frame, such as SPARC