diff options
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r-- | gcc/cgraph.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h index ae902b2ff6c..eae162ec17d 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -117,13 +117,17 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) bool analyzed; /* Set when function is scheduled to be assembled. */ bool output; + /* Set for aliases once they got through assemble_alias. */ + bool alias; }; -struct cgraph_edge GTY((chain_next ("%h.next_caller"))) +struct cgraph_edge GTY((chain_next ("%h.next_caller"), chain_prev ("%h.prev_caller"))) { struct cgraph_node *caller; struct cgraph_node *callee; + struct cgraph_edge *prev_caller; struct cgraph_edge *next_caller; + struct cgraph_edge *prev_callee; struct cgraph_edge *next_callee; tree call_expr; PTR GTY ((skip (""))) aux; @@ -150,6 +154,8 @@ struct cgraph_varpool_node GTY(()) bool finalized; /* Set when function is scheduled to be assembled. */ bool output; + /* Set for aliases once they got through assemble_alias. */ + bool alias; }; extern GTY(()) struct cgraph_node *cgraph_nodes; @@ -165,6 +171,7 @@ void dump_cgraph (FILE *); void dump_cgraph_node (FILE *, struct cgraph_node *); void cgraph_remove_edge (struct cgraph_edge *); void cgraph_remove_node (struct cgraph_node *); +void cgraph_node_remove_callees (struct cgraph_node *node); struct cgraph_edge *cgraph_create_edge (struct cgraph_node *, struct cgraph_node *, tree); |