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]

gcc/gcc ChangeLog.tree-ssa builtins.c c-common ...


CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	tree-ssa-20020619-branch
Changes by:	rth@gcc.gnu.org	2003-10-12 19:43:39

Modified files:
	gcc            : ChangeLog.tree-ssa builtins.c c-common.c 
	                 c-typeck.c fold-const.c gimplify.c print-tree.c 
	                 tree-dfa.c tree-flow-inline.h tree-flow.h 
	                 tree-must-alias.c tree-pretty-print.c 
	                 tree-simple.c tree-simple.h tree-ssa-ccp.c 
	                 tree-ssa-copyprop.c tree-ssa-dce.c 
	                 tree-ssa-dom.c tree-ssa-live.c tree-ssa-pre.c 
	                 tree-ssa.c tree.c tree.h 
	gcc/cp         : ChangeLog.tree-ssa call.c class.c decl.c init.c 
	                 pt.c rtti.c tree.c typeck.c typeck2.c 
	gcc/fortran    : ChangeLog trans-array.c trans-stmt.c 
	gcc/java       : ChangeLog.tree-ssa class.c decl.c except.c 
	                 parse.y resource.c 
Added files:
	gcc/testsuite/gcc.c-torture/execute: 20031010-1.c 

Log message:
	2003-10-12  Richard Henderson  <rth@redhat.com>
	
	* tree.h (struct tree_common): Rename unused_1 to invariant_flag.
	(TREE_INVARIANT): New.
	* builtins.c (build_string_literal): Set TREE_INVARIANT.
	* c-common.c (fix_string_type): Likewise.
	* c-typeck.c (build_external_ref): Likewise.
	(build_c_cast, pop_init_level): Likewise.
	* fold-const.c (fold_convert, fold): Likewise.
	* tree.c (make_node, build_constructor): Likewise.
	(build, build1): Likewise.
	(staticp): Pass unknown component references to the language.
	(save_expr): Check TREE_INVARIANT instead of TREE_CONSTANT.
	(skip_simple_arithmetic): Likewise.
	(stabilize_reference_1): Likewise.
	* print-tree.c (print_node): Print TREE_INVARIANT.
	
	* c-common.c (pointer_int_sum): Rely on build to set TREE_CONSTANT.
	(finish_label_address_expr): Likewise.
	* c-typeck.c (default_function_array_conversion): Likewise.
	(parser_build_binary_op, pointer_diff): Likewise.
	(build_unary_op, build_binary_op): Likewise.
	* fold-const.c (non_lvalue): Likewise.
	
	* tree-pretty-print.c (dump_generic_node): Handle VIEW_CONVERT_EXPR.
	
	cp/
	* call.c (call_builtin_trap): Use implicit_built_in_decls.
	* class.c (build_base_path): Set TREE_INVARIANT.
	(build_vtbl_ref_1, build_vtbl_initializer): Likewise.
	* decl.c (build_enumerator): Likewise.
	* init.c (build_zero_init): Likewise.
	* pt.c (push_inline_template_parms_recursive): Likewise.
	(build_template_parm_index, reduce_template_parm_level): Likewise.
	(process_template_parm): Likewise.
	* rtti.c (tinfo_base_init, generic_initializer): Likewise.
	(ptr_initializer, ptm_initializer, class_initializer): Likewise.
	* typeck.c (build_ptrmemfunc1): Likewise.
	* typeck2.c (process_init_constructor): Likewise.
	
	* calls.c (dfs_accumulate_vtbl_inits): Rely on build to set
	TREE_CONSTANT.
	(build_vtbl_initializer): Likewise.
	* init.c (build_vtbl_address): Likewise.
	* rtti.c (tinfo_base_init): Likewise.
	* tree.c (make_ptrmem_cst): Likewise.
	* typeck.c (decay_conversion): Likewise.
	(get_member_function_from_ptrfunc, build_binary_op): Likewise.
	(pointer_diff, build_address, build_nop, build_unary_op): Likewise.
	
	fortran/
	* trans-array.c (gfc_trans_static_array_pointer): Set TREE_INVARIANT.
	(gfc_trans_array_constructor_value): Likewise.
	(gfc_conv_array_initializer): Likewise.
	* trans-stmt.c (gfc_trans_character_select): Likewise.
	
	java/
	* class.c (build_utf8_ref, get_dispatch_table): Set TREE_INVARIANT.
	(make_class_data, build_symbol_entry, emit_symbol_table): Likewise.
	* decl.c (java_init_decl_processing): Likewise.
	* except.c (prepare_eh_table_type): Likewise.
	* parse.y (patch_assignment, patch_binop): Likewise.
	(patch_string_cst, patch_new_array_init): Likewise.
	* resource.c (compile_resource_data): Likewise.
	
	2003-10-12  Richard Henderson  <rth@redhat.com>
	Diego Novillo  <dnovillo@redhat.com>
	
	* gimplify.c (gimplify_array_ref_to_plus): Subtract the array
	domain minimum index.
	(gimplify_addr_expr): Expand ARRAY_REFs.  Cope with Fortran
	missing cast wierdnesses.
	* tree-dfa.c (get_expr_operands): Handle (&v + c); abort on
	other address invariants that should have been folded.
	(vdefs_disappeared_p): New.
	(mark_new_vars_to_rename): Use it.  Move from ...
	* tree-ssa-dom.c: ... here.
	* tree-flow-inline.h (is_unchanging_value): Remove; use
	is_gimple_min_invariant everywhere instead.
	(phi_ssa_name_p): New.
	* tree-must-alias.c (find_addressable_vars): Process PHIs.
	* tree-simple.c (is_gimple_min_invariant): Rename from
	is_gimple_const; allow non-static variable addresses; update callers.
	(is_gimple_val): Remove ADDR_EXPR checks.
	* tree-simple.h: Update.
	* tree-ssa-ccp.c (replace_uses_in): Add replaced_address argument.
	(substitute_and_fold): Use that to mark_new_vars_to_rename.
	(fold_indirect_refs_r): New.
	(fold_stmt): Use it.
	* tree-ssa-copyprop.c (copyprop_stmt): Call fold_stmt.
	* tree-ssa-dce.c (NECESSARY): Use asm_written_flag.
	(mark_necessary): Reject DECLs.
	* tree-ssa-live.c (register_ssa_partition): Use phi_ssa_name_p.
	* tree-ssa-pre.c (generate_expr_as_of_bb): Call fold_stmt if we
	replaced with constants.
	* tree-ssa.c (insert_copy_on_edge): Unwrap ADDR_EXPRs to set_is_used.
	(eliminate_build, coalesce_abnormal_edges, coalesce_vars): Use
	phi_ssa_name_p.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.tree-ssa.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.731&r2=1.1.2.732
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/builtins.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.152.2.36&r2=1.152.2.37
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.344.2.39&r2=1.344.2.40
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-typeck.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.196.2.28&r2=1.196.2.29
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fold-const.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.213.2.50&r2=1.213.2.51
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/gimplify.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.90&r2=1.1.2.91
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/print-tree.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.59.2.16&r2=1.59.2.17
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-dfa.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.169&r2=1.1.4.170
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-flow-inline.h.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.52&r2=1.1.2.53
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-flow.h.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.124&r2=1.1.4.125
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-must-alias.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-pretty-print.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.46&r2=1.1.2.47
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-simple.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.57&r2=1.1.4.58
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-simple.h.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.31&r2=1.1.4.32
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-ccp.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.99&r2=1.1.2.100
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-copyprop.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.15&r2=1.1.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-dce.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.57&r2=1.1.2.58
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-dom.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.53&r2=1.1.2.54
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-live.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.19&r2=1.1.2.20
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-pre.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.88&r2=1.1.4.89
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.131&r2=1.1.4.132
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.263.2.57&r2=1.263.2.58
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.h.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.342.2.106&r2=1.342.2.107
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.tree-ssa.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.44&r2=1.1.2.45
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/call.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.320.2.32&r2=1.320.2.33
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/class.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.452.2.28&r2=1.452.2.29
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.911.2.48&r2=1.911.2.49
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/init.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.281.2.27&r2=1.281.2.28
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.591.2.36&r2=1.591.2.37
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/rtti.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.135.2.21&r2=1.135.2.22
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/tree.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.286.2.34&r2=1.286.2.35
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.408.2.30&r2=1.408.2.31
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/typeck2.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.121.2.20&r2=1.121.2.21
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.51&r2=1.1.2.52
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-array.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.7&r2=1.1.2.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-stmt.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.6&r2=1.1.2.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/ChangeLog.tree-ssa.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.15&r2=1.1.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/class.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.133.2.21&r2=1.133.2.22
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/decl.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.128.2.25&r2=1.128.2.26
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/except.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.27.2.10&r2=1.27.2.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/parse.y.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.387.2.35&r2=1.387.2.36
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/java/resource.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.2.6.4&r2=1.2.6.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/execute/20031010-1.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=NONE&r2=1.1.2.1


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