diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-07-15 10:17:32 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-07-15 10:17:32 +0000 |
commit | 83c7dcd885c2189c91a3b26bb2697ba1027404a8 (patch) | |
tree | c2916073d31a98f423ae5a332f347790559245bb /gcc/lto | |
parent | 8f3f392caa32f21ad2fa9aa95798a02b0e46db4f (diff) | |
download | gcc-83c7dcd885c2189c91a3b26bb2697ba1027404a8.tar.gz |
* tree.c (tree_code_size): Add TRANSLATION_UNIT_DECL,
NAMESPACE_DECL, IMPORTED_DECL and NAMELIST_DECL;
call langhook for unknown declaration.
(find_decls_types_r): Do not walk DECL_ARGUMENT_FLD.
* tree.h (DECL_ARGUMENTS): Update.
* print-tree.c (print_node): Update.
* tree-core.h (tree_decl_non_common): Remove arguments.
(tree_function_decl): Add arguments.
* class.c (build_clone): Do not clear assembler names of
templates.
* decl.c (cp_tree_node_structure): Add TEMPLATE_DECL.
* cp-objcp-common.c (cp_tree_size): Add TEMPLATE_DECL
as a special case return sizeof (struct tree_decl_non_common)
for other decls.
(cp_common_init_ts): Do not initialize NAMESPACE_DECL;
initialize TEMPLATE_DECL as MARK_TS_DECL_COMMON.
* cp/cp-tree.h (tree_template_decl): New structure.
(cp_tree_node_structure_enum): Add TS_CP_TEMPLATE_DECL.
(union cp_lang_tree_node): Add template_decl.
(DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT): Update.
* lto/lto.c (mentions_vars_p_decl_non_common): Skip
DECL_ARGUMENT_FLD.
mentions_vars_p_function): Do DECL_ARGUMENTS.
(lto_fixup_prevailing_decls): Update.
* objc-act.c (objc_common_tree_size): New function.
* objc-act.h (KEYWORD_KEY_NAME, KEYWORD_ARG_NAME): Add type
checking.
(INSTANCE_METHOD_OR_CLASS_METHOD_DECL_CHECK): New macro.
(METHOD_SEL_NAME, METHOD_SEL_ARGS, METHOD_ADD_ARGS,
METHOD_ADD_ARGS_ELLIPSIS_P, METHOD_DEFINITION, METHOD_ENCODING,
METHOD_TYPE_ATTRIBUTES, METHOD_PROPERTY_CONTEXT): Add type checking.
(METHOD_SEL_ARGS): Use decl_common.size instead of
decl_non_common.result.
(PROPERTY_NAME, PROPERTY_GETTER_NAME, PROPERTY_SETTER_NAME,
PROPERTY_READONLY, PROPERTY_NONATOMIC, PROPERTY_ASSIGN_SEMANTICS,
PROPERTY_IVAR_NAME, PROPERTY_DYNAMIC, PROPERTY_HAS_NO_GETTER,
PROPERTY_HAS_NO_SETTER, PROPERTY_OPTIONAL): Add type checking.
(objc_common_tree_size): Declare.
* objc/objc-lang.c (LANG_HOOKS_TREE_SIZE): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@212549 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto')
-rw-r--r-- | gcc/lto/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/lto/lto.c | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index 194acba87c9..8fd21ea828f 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,10 @@ +2014-07-14 Jan Hubicka <hubicka@ucw.cz> + + * lto.c (mentions_vars_p_decl_non_common): Skip + DECL_ARGUMENT_FLD. + mentions_vars_p_function): Do DECL_ARGUMENTS. + (lto_fixup_prevailing_decls): Update. + 2014-07-12 Jan Hubicka <hubicka@ucw.cz> * lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index dc30884d334..5056915529f 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -775,7 +775,6 @@ mentions_vars_p_decl_non_common (tree t) { if (mentions_vars_p_decl_with_vis (t)) return true; - CHECK_NO_VAR (DECL_ARGUMENT_FLD (t)); CHECK_NO_VAR (DECL_RESULT_FLD (t)); return false; } @@ -787,6 +786,7 @@ mentions_vars_p_function (tree t) { if (mentions_vars_p_decl_non_common (t)) return true; + CHECK_NO_VAR (DECL_ARGUMENTS (t)); CHECK_NO_VAR (DECL_VINDEX (t)); CHECK_VAR (DECL_FUNCTION_PERSONALITY (t)); return false; @@ -2711,11 +2711,11 @@ lto_fixup_prevailing_decls (tree t) } if (CODE_CONTAINS_STRUCT (code, TS_DECL_NON_COMMON)) { - LTO_NO_PREVAIL (DECL_ARGUMENT_FLD (t)); LTO_NO_PREVAIL (DECL_RESULT_FLD (t)); } if (CODE_CONTAINS_STRUCT (code, TS_FUNCTION_DECL)) { + LTO_NO_PREVAIL (DECL_ARGUMENTS (t)); LTO_SET_PREVAIL (DECL_FUNCTION_PERSONALITY (t)); LTO_NO_PREVAIL (DECL_VINDEX (t)); } |