summaryrefslogtreecommitdiffstats
path: root/gcc/cgraph.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r--gcc/cgraph.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index 78b0fad3e86..82cf2d9fe13 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -144,6 +144,8 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous")))
gcov_type count;
/* Unique id of the node. */
int uid;
+ /* Ordering of all cgraph nodes. */
+ int order;
/* Set when function must be output - it is externally visible
or its address is taken. */
bool needed;
@@ -197,6 +199,8 @@ struct cgraph_varpool_node GTY(())
struct cgraph_varpool_node *next;
/* Pointer to the next function in cgraph_varpool_nodes_queue. */
struct cgraph_varpool_node *next_needed;
+ /* Ordering of all cgraph nodes. */
+ int order;
/* Set when function must be output - it is externally visible
or its address is taken. */
@@ -217,6 +221,18 @@ struct cgraph_varpool_node GTY(())
bool alias;
};
+/* Every top level asm statement is put into a cgraph_asm_node. */
+
+struct cgraph_asm_node GTY(())
+{
+ /* Next asm node. */
+ struct cgraph_asm_node *next;
+ /* String for this asm node. */
+ tree asm_str;
+ /* Ordering of all cgraph nodes. */
+ int order;
+};
+
extern GTY(()) struct cgraph_node *cgraph_nodes;
extern GTY(()) int cgraph_n_nodes;
extern GTY(()) int cgraph_max_uid;
@@ -226,6 +242,8 @@ extern GTY(()) struct cgraph_node *cgraph_nodes_queue;
extern GTY(()) struct cgraph_varpool_node *cgraph_varpool_first_unanalyzed_node;
extern GTY(()) struct cgraph_varpool_node *cgraph_varpool_nodes_queue;
+extern GTY(()) struct cgraph_asm_node *cgraph_asm_nodes;
+extern GTY(()) int cgraph_order;
/* In cgraph.c */
void dump_cgraph (FILE *);
@@ -258,6 +276,8 @@ void cgraph_varpool_mark_needed_node (struct cgraph_varpool_node *);
void cgraph_varpool_finalize_decl (tree);
void cgraph_redirect_edge_callee (struct cgraph_edge *, struct cgraph_node *);
+struct cgraph_asm_node *cgraph_add_asm_node (tree);
+
bool cgraph_function_possibly_inlined_p (tree);
void cgraph_unnest_node (struct cgraph_node *);
void cgraph_varpool_enqueue_needed_node (struct cgraph_varpool_node *);
OpenPOWER on IntegriCloud