]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/cgraph.h
common.opt (ftoplevel-reorder): New option.
authorIan Lance Taylor <ian@gcc.gnu.org>
Tue, 17 Jan 2006 07:04:20 +0000 (07:04 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Tue, 17 Jan 2006 07:04:20 +0000 (07:04 +0000)
commit474eccc60315960b14fb0af4b7da9c6795ac4f0e
tree11320048997fd124915d16755d4d699f94cce278
parent2fbdae3614e1e34d29ca5ce2af89739e39e305bd
common.opt (ftoplevel-reorder): New option.

./: * common.opt (ftoplevel-reorder): New option.
* cgraph.c (cgraph_asm_nodes): New global variable.
(cgraph_asm_last_node): New static variable.
(cgraph_order): New global variable.
(cgraph_create_node): Set new order field.
(cgraph_varpool_node): Likewise.
(decide_is_variable_needed): Return true if not
flag_toplevel_reorder.
(cgraph_add_asm_node): New function.
* cgraph.h (struct cgraph_node): Add order field.
(struct cgraph_varpool_node): Add order field.
(struct cgraph_asm_node): Define.
(cgraph_asm_nodes, cgraph_order): Declare.
(cgraph_add_asm_node): Declare.
* cgraphunit.c (cgraph_varpool_assemble_decl): New static
function.
(cgraph_varpool_assemble_pending_decls): Call it.
(cgraph_output_pending_asms): New static function.
(cgraph_finalize_compilation_unit): Call it.
(struct cgraph_order_sort): Define.
(cgraph_output_in_order): New static function.
(cgraph_optimize): Call cgraph_output_pending_asms.  Add code for
!flag_toplevel_reorder case.
* c-parser.c: Include "cgraph.h".
(c_parser_asm_definition): Call cgraph_add_asm_node rather than
assemble_asm.
* Makefile.in (CRTSTUFF_CFLAGS): Use -fno-toplevel-reorder rather
than -fno-unit-at-a-time.
* doc/invoke.texi (Option Summary): Mention
-fno-toplevel-reorder.
(Optimize Options): Document -fno-toplevel-reorder.  Mention it in
-funit-at-a-time documentation.
cp/:
* parser.c: Include "cgraph.h".
(cp_parser_asm_definition): Call cgraph_add_asm_node rather than
assemble_asm.

From-SVN: r109811
gcc/ChangeLog
gcc/Makefile.in
gcc/c-parser.c
gcc/cgraph.c
gcc/cgraph.h
gcc/cgraphunit.c
gcc/common.opt
gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/doc/invoke.texi