diff options
author | Mark Mitchell <mark@codesourcery.com> | 2004-02-04 12:22:42 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2004-02-04 12:22:42 +0000 |
commit | dd292d0ad8022964b57aba763b9abce9564ac14f (patch) | |
tree | 8c306782503db9a3eda1fbfd9d593004b11e369d /gcc/tree.h | |
parent | 18d0ecb6ec0d462b185a4fa340952a040b5c6f9e (diff) | |
download | gcc-dd292d0ad8022964b57aba763b9abce9564ac14f.zip gcc-dd292d0ad8022964b57aba763b9abce9564ac14f.tar.gz gcc-dd292d0ad8022964b57aba763b9abce9564ac14f.tar.bz2 |
calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P parameter.
* calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
parameter. Use it instead of current_function_is_thunk.
* function.h (struct function): Update documentation for is_thunk.
* tree.h (CALL_FROM_THUNK_P): New macro.
* config/alpha/alpha.c (alpha_sa_mask): Do not check
no_new_pseudos when testing current_function_is_thunk.
* config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.
* decl.c (cxx_push_function_context): Do not set
current_function_is_thunk.
* method.c (use_thunk): Set CALL_FROM_THUNK on the call to the
actual function.
From-SVN: r77244
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -210,6 +210,8 @@ struct tree_common GTY(()) TREE_PROTECTED in BLOCK ..._DECL + CALL_FROM_THUNK_P in + CALL_EXPR side_effects_flag: @@ -265,6 +267,7 @@ struct tree_common GTY(()) TREE_DEPRECATED in ..._DECL + */ /* Define accessors for the fields that all tree nodes have @@ -623,6 +626,10 @@ extern void tree_operand_check_failed (int, enum tree_code, argument list. */ #define CALL_EXPR_HAS_RETURN_SLOT_ADDR(NODE) ((NODE)->common.private_flag) +/* In a CALL_EXPR, means that the call is the jump from a thunk to the + thunked-to function. */ +#define CALL_FROM_THUNK_P(NODE) ((NODE)->common.protected_flag) + /* In a type, nonzero means that all objects of the type are guaranteed by the language or front-end to be properly aligned, so we can indicate that a MEM of this type is aligned at least to the alignment of the type, even if it |