diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-30 21:56:46 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-30 21:56:46 +0000 |
commit | 5d31fea4689ec6820d64709a39a07555de54dc40 (patch) | |
tree | f704a619a0160f7e2e4daef01e29f11c9aa4fa89 /gcc/cgraph.h | |
parent | 5a1baa511cdf73c8b3af1538bdee858fdc869d6b (diff) | |
download | gcc-5d31fea4689ec6820d64709a39a07555de54dc40.tar.gz |
* Makefile.in (GTFILES): Add cgraph.h.
* cgraph.c (known_decls): Remove.
(cgraph_hash, cgraph_nodes, cgraph_nodes_queue,
cgraph_varpool_hash, cgraph_varpool_nodes_queue): GTYize.
(cgraph_node): Do not allocate known_decls; use polutate hashtable.
(cgraph_varpool_node): Likewise; add next pointer.
(cgraph_varpool_nodes): New static variable.
* cgraph.h (cgraph_local_info, cgraph_global_info, cgraph_rtl_info,
cgraph_node, cgraph_edge, cgraph_varpool_node, cgraph_nodes, cgraph_n_nodes,
cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): GTYize.
* gengtype.c (open_base_files): Include cgraph.h
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68742 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r-- | gcc/cgraph.h | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h index de35a0dbbdc..8e5ceba0e33 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -25,7 +25,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA /* Information about the function collected locally. Available after function is lowered */ -struct cgraph_local_info +struct cgraph_local_info GTY(()) { /* Set when function function is visiable in current compilation unit only and it's address is never taken. */ @@ -40,7 +40,7 @@ struct cgraph_local_info /* Information about the function that needs to be computed globally once compilation is finished. Available only with -funit-at-time. */ -struct cgraph_global_info +struct cgraph_global_info GTY(()) { /* Set when the function will be inlined exactly once. */ bool inline_once; @@ -49,9 +49,10 @@ struct cgraph_global_info /* Information about the function that is propagated by the RTL backend. Available only for functions that has been already assembled. */ -struct cgraph_rtl_info +struct cgraph_rtl_info GTY(()) { - bool const_function, pure_function; + bool const_function; + bool pure_function; int preferred_incoming_stack_boundary; }; @@ -59,19 +60,20 @@ struct cgraph_rtl_info /* The cgraph data strutcture. Each function decl has assigned cgraph_node listing calees and callers. */ -struct cgraph_node +struct cgraph_node GTY(()) { tree decl; struct cgraph_edge *callees; struct cgraph_edge *callers; - struct cgraph_node *next, *previous; + struct cgraph_node *next; + struct cgraph_node *previous; /* For nested functions points to function the node is nested in. */ struct cgraph_node *origin; /* Points to first nested function, if any. */ struct cgraph_node *nested; /* Pointer to the next function with same origin, if any. */ struct cgraph_node *next_nested; - void *aux; + PTR GTY ((skip (""))) aux; /* Set when function must be output - it is externally visible or it's address is taken. */ @@ -90,9 +92,10 @@ struct cgraph_node struct cgraph_rtl_info rtl; }; -struct cgraph_edge +struct cgraph_edge GTY(()) { - struct cgraph_node *caller, *callee; + struct cgraph_node *caller; + struct cgraph_node *callee; struct cgraph_edge *next_caller; struct cgraph_edge *next_callee; }; @@ -100,10 +103,10 @@ struct cgraph_edge /* The cgraph_varpool data strutcture. Each static variable decl has assigned cgraph_varpool_node. */ -struct cgraph_varpool_node +struct cgraph_varpool_node GTY(()) { tree decl; - void *aux; + PTR GTY ((skip (""))) aux; /* Set when function must be output - it is externally visible or it's address is taken. */ @@ -114,13 +117,13 @@ struct cgraph_varpool_node bool output; }; -extern struct cgraph_node *cgraph_nodes; -extern int cgraph_n_nodes; +extern GTY(()) struct cgraph_node *cgraph_nodes; +extern GTY(()) int cgraph_n_nodes; extern bool cgraph_global_info_ready; -extern struct cgraph_node *cgraph_nodes_queue; +extern GTY(()) struct cgraph_node *cgraph_nodes_queue; -extern int cgraph_varpool_n_nodes; -extern struct cgraph_varpool_node *cgraph_varpool_nodes_queue; +extern GTY(()) int cgraph_varpool_n_nodes; +extern GTY(()) struct cgraph_varpool_node *cgraph_varpool_nodes_queue; /* In cgraph.c */ |