aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-devirt.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ipa-devirt.c')
-rw-r--r--gcc/ipa-devirt.c50
1 files changed, 25 insertions, 25 deletions
diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c
index 0d7c39b..80c6b73 100644
--- a/gcc/ipa-devirt.c
+++ b/gcc/ipa-devirt.c
@@ -544,9 +544,9 @@ build_type_inheritance_graph (void)
/* We reconstruct the graph starting of types of all methods seen in the
the unit. */
FOR_EACH_FUNCTION (n)
- if (DECL_VIRTUAL_P (n->symbol.decl)
- && symtab_real_symbol_p ((symtab_node)n))
- get_odr_type (method_class_type (TREE_TYPE (n->symbol.decl)), true);
+ if (DECL_VIRTUAL_P (n->decl)
+ && symtab_real_symbol_p (n))
+ get_odr_type (method_class_type (TREE_TYPE (n->decl)), true);
if (inheritance_dump_file)
{
dump_type_inheritance_graph (inheritance_dump_file);
@@ -572,8 +572,8 @@ maybe_record_node (vec <cgraph_node *> &nodes,
&& !pointer_set_insert (inserted, target)
&& (target_node = cgraph_get_node (target)) != NULL
&& (TREE_PUBLIC (target)
- || target_node->symbol.definition)
- && symtab_real_symbol_p ((symtab_node)target_node))
+ || target_node->definition)
+ && symtab_real_symbol_p (target_node))
{
pointer_set_insert (cached_polymorphic_call_targets,
target_node);
@@ -627,7 +627,7 @@ record_binfo (vec <cgraph_node *> &nodes,
if (TREE_CODE (vtable) == POINTER_PLUS_EXPR)
vtable = TREE_OPERAND (TREE_OPERAND (vtable, 0), 0);
vnode = varpool_get_node (vtable);
- if (!vnode || !vnode->symbol.definition)
+ if (!vnode || !vnode->definition)
return;
}
tree target = gimple_get_virt_method_for_binfo (otr_token, type_binfo);
@@ -761,8 +761,8 @@ devirt_variable_node_removal_hook (struct varpool_node *n,
void *d ATTRIBUTE_UNUSED)
{
if (cached_polymorphic_call_targets
- && DECL_VIRTUAL_P (n->symbol.decl)
- && type_in_anonymous_namespace_p (DECL_CONTEXT (n->symbol.decl)))
+ && DECL_VIRTUAL_P (n->decl)
+ && type_in_anonymous_namespace_p (DECL_CONTEXT (n->decl)))
free_polymorphic_call_targets_hash ();
}
@@ -891,7 +891,7 @@ dump_possible_polymorphic_call_targets (FILE *f,
final ? " (full list)" : " (partial list, may call to other unit)");
for (i = 0; i < targets.length (); i++)
fprintf (f, " %s/%i", cgraph_node_name (targets[i]),
- targets[i]->symbol.order);
+ targets[i]->order);
fprintf (f, "\n");
}
@@ -917,7 +917,7 @@ possible_polymorphic_call_target_p (tree otr_type,
/* At a moment we allow middle end to dig out new external declarations
as a targets of polymorphic calls. */
- if (!final && !n->symbol.definition)
+ if (!final && !n->definition)
return true;
return false;
}
@@ -938,10 +938,10 @@ update_type_inheritance_graph (void)
/* We reconstruct the graph starting of types of all methods seen in the
the unit. */
FOR_EACH_FUNCTION (n)
- if (DECL_VIRTUAL_P (n->symbol.decl)
- && !n->symbol.definition
- && symtab_real_symbol_p ((symtab_node)n))
- get_odr_type (method_class_type (TREE_TYPE (n->symbol.decl)), true);
+ if (DECL_VIRTUAL_P (n->decl)
+ && !n->definition
+ && symtab_real_symbol_p (n))
+ get_odr_type (method_class_type (TREE_TYPE (n->decl)), true);
timevar_pop (TV_IPA_INHERITANCE);
}
@@ -955,13 +955,13 @@ likely_target_p (struct cgraph_node *n)
{
int flags;
/* cxa_pure_virtual and similar things are not likely. */
- if (TREE_CODE (TREE_TYPE (n->symbol.decl)) != METHOD_TYPE)
+ if (TREE_CODE (TREE_TYPE (n->decl)) != METHOD_TYPE)
return false;
- flags = flags_from_decl_or_type (n->symbol.decl);
+ flags = flags_from_decl_or_type (n->decl);
if (flags & ECF_NORETURN)
return false;
if (lookup_attribute ("cold",
- DECL_ATTRIBUTES (n->symbol.decl)))
+ DECL_ATTRIBUTES (n->decl)))
return false;
if (n->frequency < NODE_FREQUENCY_NORMAL)
return false;
@@ -988,7 +988,7 @@ ipa_devirt (void)
bool update = false;
if (dump_file && n->indirect_calls)
fprintf (dump_file, "\n\nProcesing function %s/%i\n",
- cgraph_node_name (n), n->symbol.order);
+ cgraph_node_name (n), n->order);
for (e = n->indirect_calls; e; e = e->next_callee)
if (e->indirect_info->polymorphic)
{
@@ -1069,7 +1069,7 @@ ipa_devirt (void)
}
continue;
}
- if (!likely_target->symbol.definition)
+ if (!likely_target->definition)
{
if (dump_file)
fprintf (dump_file, "Target is not an definition\n");
@@ -1080,7 +1080,7 @@ ipa_devirt (void)
can handle these just well, it is common for programs to
incorrectly with headers defining methods they are linked
with. */
- if (DECL_EXTERNAL (likely_target->symbol.decl))
+ if (DECL_EXTERNAL (likely_target->decl))
{
if (dump_file)
fprintf (dump_file, "Target is external\n");
@@ -1089,7 +1089,7 @@ ipa_devirt (void)
}
if (cgraph_function_body_availability (likely_target)
<= AVAIL_OVERWRITABLE
- && symtab_can_be_discarded ((symtab_node) likely_target))
+ && symtab_can_be_discarded (likely_target))
{
if (dump_file)
fprintf (dump_file, "Target is overwritable\n");
@@ -1101,14 +1101,14 @@ ipa_devirt (void)
if (dump_file)
fprintf (dump_file,
"Speculatively devirtualizing call in %s/%i to %s/%i\n",
- cgraph_node_name (n), n->symbol.order,
+ cgraph_node_name (n), n->order,
cgraph_node_name (likely_target),
- likely_target->symbol.order);
- if (!symtab_can_be_discarded ((symtab_node) likely_target))
+ likely_target->order);
+ if (!symtab_can_be_discarded (likely_target))
{
cgraph_node *alias;
alias = cgraph (symtab_nonoverwritable_alias
- ((symtab_node)likely_target));
+ (likely_target));
if (alias)
likely_target = alias;
}