diff options
Diffstat (limited to 'gcc/cgraphclones.c')
-rw-r--r-- | gcc/cgraphclones.c | 90 |
1 files changed, 45 insertions, 45 deletions
diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c index 05a9067..373f501 100644 --- a/gcc/cgraphclones.c +++ b/gcc/cgraphclones.c @@ -187,19 +187,19 @@ cgraph_clone_node (struct cgraph_node *n, tree decl, gcov_type count, int freq, gcov_type count_scale; unsigned i; - new_node->symbol.decl = decl; - symtab_register_node ((symtab_node)new_node); + new_node->decl = decl; + symtab_register_node (new_node); new_node->origin = n->origin; - new_node->symbol.lto_file_data = n->symbol.lto_file_data; + new_node->lto_file_data = n->lto_file_data; if (new_node->origin) { new_node->next_nested = new_node->origin->nested; new_node->origin->nested = new_node; } - new_node->symbol.analyzed = n->symbol.analyzed; - new_node->symbol.definition = n->symbol.definition; + new_node->analyzed = n->analyzed; + new_node->definition = n->definition; new_node->local = n->local; - new_node->symbol.externally_visible = false; + new_node->externally_visible = false; new_node->local.local = true; new_node->global = n->global; new_node->global.inlined_to = new_inlined_to; @@ -239,7 +239,7 @@ cgraph_clone_node (struct cgraph_node *n, tree decl, gcov_type count, int freq, for (e = n->indirect_calls; e; e = e->next_callee) cgraph_clone_edge (e, new_node, e->call_stmt, e->lto_stmt_uid, count_scale, freq, update_original); - ipa_clone_references ((symtab_node)new_node, &n->symbol.ref_list); + ipa_clone_references (new_node, &n->ref_list); new_node->next_sibling_clone = n->clones; if (n->clones) @@ -290,7 +290,7 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node, bitmap args_to_skip, const char * suffix) { - tree old_decl = old_node->symbol.decl; + tree old_decl = old_node->decl; struct cgraph_node *new_node = NULL; tree new_decl; size_t len, i; @@ -336,16 +336,16 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node, that is not weak also. ??? We cannot use COMDAT linkage because there is no ABI support for this. */ - DECL_EXTERNAL (new_node->symbol.decl) = 0; + DECL_EXTERNAL (new_node->decl) = 0; if (DECL_ONE_ONLY (old_decl)) - DECL_SECTION_NAME (new_node->symbol.decl) = NULL; - DECL_COMDAT_GROUP (new_node->symbol.decl) = 0; - TREE_PUBLIC (new_node->symbol.decl) = 0; - DECL_COMDAT (new_node->symbol.decl) = 0; - DECL_WEAK (new_node->symbol.decl) = 0; - DECL_VIRTUAL_P (new_node->symbol.decl) = 0; - DECL_STATIC_CONSTRUCTOR (new_node->symbol.decl) = 0; - DECL_STATIC_DESTRUCTOR (new_node->symbol.decl) = 0; + DECL_SECTION_NAME (new_node->decl) = NULL; + DECL_COMDAT_GROUP (new_node->decl) = 0; + TREE_PUBLIC (new_node->decl) = 0; + DECL_COMDAT (new_node->decl) = 0; + DECL_WEAK (new_node->decl) = 0; + DECL_VIRTUAL_P (new_node->decl) = 0; + DECL_STATIC_CONSTRUCTOR (new_node->decl) = 0; + DECL_STATIC_DESTRUCTOR (new_node->decl) = 0; new_node->clone.tree_map = tree_map; new_node->clone.args_to_skip = args_to_skip; @@ -355,9 +355,9 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node, && !DECL_WEAK (old_decl) && !DECL_COMDAT (old_decl)) || in_lto_p) - new_node->symbol.unique_name = true; + new_node->unique_name = true; FOR_EACH_VEC_SAFE_ELT (tree_map, i, map) - ipa_maybe_record_reference ((symtab_node) new_node, map->new_tree, + ipa_maybe_record_reference (new_node, map->new_tree, IPA_REF_ADDR, NULL); if (!args_to_skip) new_node->clone.combined_args_to_skip = old_node->clone.combined_args_to_skip; @@ -369,7 +369,7 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node, struct cgraph_node *orig_node; for (orig_node = old_node; orig_node->clone_of; orig_node = orig_node->clone_of) ; - for (arg = DECL_ARGUMENTS (orig_node->symbol.decl); + for (arg = DECL_ARGUMENTS (orig_node->decl); arg; arg = DECL_CHAIN (arg), oldi++) { if (bitmap_bit_p (old_node->clone.combined_args_to_skip, oldi)) @@ -385,7 +385,7 @@ cgraph_create_virtual_clone (struct cgraph_node *old_node, } else new_node->clone.combined_args_to_skip = args_to_skip; - new_node->symbol.externally_visible = 0; + new_node->externally_visible = 0; new_node->local.local = 1; new_node->lowered = true; @@ -404,7 +404,7 @@ cgraph_find_replacement_node (struct cgraph_node *node) for (next_inline_clone = node->clones; next_inline_clone - && next_inline_clone->symbol.decl != node->symbol.decl; + && next_inline_clone->decl != node->decl; next_inline_clone = next_inline_clone->next_sibling_clone) ; @@ -631,8 +631,8 @@ update_call_expr (struct cgraph_node *new_version) /* Update the call expr on the edges to call the new version. */ for (e = new_version->callers; e; e = e->next_caller) { - struct function *inner_function = DECL_STRUCT_FUNCTION (e->caller->symbol.decl); - gimple_call_set_fndecl (e->call_stmt, new_version->symbol.decl); + struct function *inner_function = DECL_STRUCT_FUNCTION (e->caller->decl); + gimple_call_set_fndecl (e->call_stmt, new_version->decl); maybe_clean_eh_stmt_fn (inner_function, e->call_stmt); } } @@ -663,11 +663,11 @@ cgraph_copy_node_for_versioning (struct cgraph_node *old_version, new_version = cgraph_create_node (new_decl); - new_version->symbol.analyzed = old_version->symbol.analyzed; - new_version->symbol.definition = old_version->symbol.definition; + new_version->analyzed = old_version->analyzed; + new_version->definition = old_version->definition; new_version->local = old_version->local; - new_version->symbol.externally_visible = false; - new_version->local.local = new_version->symbol.definition; + new_version->externally_visible = false; + new_version->local.local = new_version->definition; new_version->global = old_version->global; new_version->rtl = old_version->rtl; new_version->count = old_version->count; @@ -728,7 +728,7 @@ cgraph_function_versioning (struct cgraph_node *old_version_node, basic_block new_entry_block, const char *clone_name) { - tree old_decl = old_version_node->symbol.decl; + tree old_decl = old_version_node->decl; struct cgraph_node *new_version_node = NULL; tree new_decl; @@ -768,9 +768,9 @@ cgraph_function_versioning (struct cgraph_node *old_version_node, that is not weak also. ??? We cannot use COMDAT linkage because there is no ABI support for this. */ - symtab_make_decl_local (new_version_node->symbol.decl); - DECL_VIRTUAL_P (new_version_node->symbol.decl) = 0; - new_version_node->symbol.externally_visible = 0; + symtab_make_decl_local (new_version_node->decl); + DECL_VIRTUAL_P (new_version_node->decl) = 0; + new_version_node->externally_visible = 0; new_version_node->local.local = 1; new_version_node->lowered = true; /* Clones of global symbols or symbols with unique names are unique. */ @@ -779,7 +779,7 @@ cgraph_function_versioning (struct cgraph_node *old_version_node, && !DECL_WEAK (old_decl) && !DECL_COMDAT (old_decl)) || in_lto_p) - new_version_node->symbol.unique_name = true; + new_version_node->unique_name = true; /* Update the call_expr on the edges to call the new version node. */ update_call_expr (new_version_node); @@ -794,18 +794,18 @@ static void cgraph_materialize_clone (struct cgraph_node *node) { bitmap_obstack_initialize (NULL); - node->former_clone_of = node->clone_of->symbol.decl; + node->former_clone_of = node->clone_of->decl; if (node->clone_of->former_clone_of) node->former_clone_of = node->clone_of->former_clone_of; /* Copy the OLD_VERSION_NODE function tree to the new version. */ - tree_function_versioning (node->clone_of->symbol.decl, node->symbol.decl, + tree_function_versioning (node->clone_of->decl, node->decl, node->clone.tree_map, true, node->clone.args_to_skip, false, NULL, NULL); if (cgraph_dump_file) { - dump_function_to_file (node->clone_of->symbol.decl, cgraph_dump_file, dump_flags); - dump_function_to_file (node->symbol.decl, cgraph_dump_file, dump_flags); + dump_function_to_file (node->clone_of->decl, cgraph_dump_file, dump_flags); + dump_function_to_file (node->decl, cgraph_dump_file, dump_flags); } /* Function is no longer clone. */ @@ -817,11 +817,11 @@ cgraph_materialize_clone (struct cgraph_node *node) node->clone_of->clones = node->next_sibling_clone; node->next_sibling_clone = NULL; node->prev_sibling_clone = NULL; - if (!node->clone_of->symbol.analyzed && !node->clone_of->clones) + if (!node->clone_of->analyzed && !node->clone_of->clones) { cgraph_release_function_body (node->clone_of); cgraph_node_remove_callees (node->clone_of); - ipa_remove_all_references (&node->clone_of->symbol.ref_list); + ipa_remove_all_references (&node->clone_of->ref_list); } node->clone_of = NULL; bitmap_obstack_release (NULL); @@ -854,12 +854,12 @@ cgraph_materialize_all_clones (void) stabilized = true; FOR_EACH_FUNCTION (node) { - if (node->clone_of && node->symbol.decl != node->clone_of->symbol.decl - && !gimple_has_body_p (node->symbol.decl)) + if (node->clone_of && node->decl != node->clone_of->decl + && !gimple_has_body_p (node->decl)) { if (!node->clone_of->clone_of) cgraph_get_body (node->clone_of); - if (gimple_has_body_p (node->clone_of->symbol.decl)) + if (gimple_has_body_p (node->clone_of->decl)) { if (cgraph_dump_file) { @@ -903,13 +903,13 @@ cgraph_materialize_all_clones (void) } } FOR_EACH_FUNCTION (node) - if (!node->symbol.analyzed && node->callees) + if (!node->analyzed && node->callees) { cgraph_node_remove_callees (node); - ipa_remove_all_references (&node->symbol.ref_list); + ipa_remove_all_references (&node->ref_list); } else - ipa_clear_stmts_in_references ((symtab_node)node); + ipa_clear_stmts_in_references (node); if (cgraph_dump_file) fprintf (cgraph_dump_file, "Materialization Call site updates done.\n"); #ifdef ENABLE_CHECKING |