This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r149112 - in /trunk/gcc: ChangeLog Makefile.in ...


Author: ebotcazou
Date: Tue Jun 30 17:26:32 2009
New Revision: 149112

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=149112
Log:
	* cgraphunit.c (cgraph_finalize_compilation_unit): Call
	finalize_size_functions before further processing.
	* stor-layout.c: Include cgraph.h, tree-inline.h and tree-dump.h.
	(variable_size): Call self_referential_size on size expressions
	that contain a PLACEHOLDER_EXPR.
	(size_functions): New static variable.
	(copy_self_referential_tree_r): New static function.
	(self_referential_size): Likewise.
	(finalize_size_functions): New global function.
	* tree.c: Include tree-inline.h.
	(push_without_duplicates): New static function.
	(find_placeholder_in_expr): New global function.
	(substitute_in_expr) <tcc_declaration>: Return the replacement object
	on equality.
	<tcc_expression>: Likewise.
	<tcc_vl_exp>: If the replacement object is a constant, try to inline
	the call in the expression.
	* tree.h (finalize_size_functions): Declare.
	(find_placeholder_in_expr): Likewise.
	(FIND_PLACEHOLDER_IN_EXPR): New macro.
	(substitute_placeholder_in_expr): Update comment.
	* tree-inline.c (remap_decl): Do not unshare trees if do_not_unshare
	is true.
	(copy_tree_body_r): Likewise.
	(copy_tree_body): New static function.
	(maybe_inline_call_in_expr): New global function.
	* tree-inline.h (struct copy_body_data): Add do_not_unshare field.
	(maybe_inline_call_in_expr): Declare.
	* Makefile.in (tree.o): Depend on TREE_INLINE_H.
	(stor-layout.o): Depend on CGRAPH_H, TREE_INLINE_H, TREE_DUMP_H and
	GIMPLE_H.
ada/
	* gcc-interface/decl.c: Include tree-inline.h.
	(annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
	* gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
	* gcc-interface/utils2.c: Include tree-inline.
	(known_alignment) <CALL_EXPR>: Likewise.

Added:
    trunk/gcc/testsuite/gnat.dg/discr12.adb
    trunk/gcc/testsuite/gnat.dg/discr12_pkg.ads
    trunk/gcc/testsuite/gnat.dg/discr13.adb
    trunk/gcc/testsuite/gnat.dg/discr14.adb
    trunk/gcc/testsuite/gnat.dg/discr14.ads
    trunk/gcc/testsuite/gnat.dg/discr15.adb
    trunk/gcc/testsuite/gnat.dg/discr15_pkg.ads
    trunk/gcc/testsuite/gnat.dg/discr16.adb
    trunk/gcc/testsuite/gnat.dg/discr16_cont.ads
    trunk/gcc/testsuite/gnat.dg/discr16_g.ads
    trunk/gcc/testsuite/gnat.dg/discr16_pkg.ads
    trunk/gcc/testsuite/gnat.dg/discr17.adb
    trunk/gcc/testsuite/gnat.dg/discr18.adb
    trunk/gcc/testsuite/gnat.dg/discr18_pkg.ads
    trunk/gcc/testsuite/gnat.dg/discr19.adb
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/Makefile.in
    trunk/gcc/ada/ChangeLog
    trunk/gcc/ada/gcc-interface/decl.c
    trunk/gcc/ada/gcc-interface/utils.c
    trunk/gcc/ada/gcc-interface/utils2.c
    trunk/gcc/cgraphunit.c
    trunk/gcc/stor-layout.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-inline.c
    trunk/gcc/tree-inline.h
    trunk/gcc/tree.c
    trunk/gcc/tree.h


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]