Commit Graph

58980 Commits

Author SHA1 Message Date
Paolo Bonzini 6bbba4c73c toplev.h (rest_of_compilation): Adjust prototype.
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* toplev.h (rest_of_compilation): Adjust prototype.

From-SVN: r83226
2004-06-16 07:27:32 +00:00
Paolo Bonzini 2f8e398bf4 coverage.c: Remove argument to rest_of_compilation.
gcc/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* coverage.c: Remove argument to rest_of_compilation.
	* expr.c (execute_expand, set_save_expr_context, pass_expand): New.
	* passes.c (rest_of_compilation): Remove argument.
	(pass_rest_of_compilation): New.
	(rest_of_handle_final, rest_of_handle_delay_slots,
	rest_of_handle_stack_regs, rest_of_handle_variable_tracking
	rest_of_handle_machine_reorg, rest_of_handle_regrename
	rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_gcse2
	rest_of_handle_regmove, rest_of_handle_tracer
	rest_of_handle_if_conversion, rest_of_handle_if_after_combine
	rest_of_handle_web, rest_of_handle_branch_prob
	rest_of_handle_value_profile_transformations, rest_of_handle_cfg
	rest_of_handle_addressof, rest_of_handle_jump_bypass
	rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2):
	Check that the two arguments are actually superfluous.
	* toplev.h (rest_of_compilation): Adjust prototype.
	* tree-optimize.c (register_dump_files): Add properties argument.
	Track validity of passes.  Only initialize dump files for
	tree-based passes.  Store the full set of provided passes in
	the pass.
	(init_tree_optimization_passes): Register pass_expand and
	pass_rest_of_compilation.
	(execute_one_pass): Do not track the presence of required properties
	here.  Set in_gimple_form.  Do not update current_properties.
	(current_properties): Remove.
	(set_save_expr_context): Remove.
	(tree_rest_of_compilation): Do not set in_gimple_form.  Do not
	expand to RTL here, and do not call rest_of_compilation.  Push
	GGC context even before gimplification.
	* tree-pass.h (PROP_rtl, PROP_trees): New flags.
	(pass_expand, pass_rest_of_compilation): Declare.

gcc/java/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* java/class.c (emit_register_classes): Remove argument to
	rest_of_compilation.
	* java/resource.c (write_resource_constructor): Likewise.

From-SVN: r83225
2004-06-16 07:25:53 +00:00
Jeff Law fd660b1bee fold-const.c (swap_tree_comparison): No longer static.
* fold-const.c (swap_tree_comparison): No longer static.
        (tree_swap_operands_p): Similarly.  Return true if both operands
        are SSA_NAMEs and the first operand has a higher version number than
        the second operand.
        * tree.h (swap_tree_comparison): Prototype.
        (tree_swap_operands_p): Prototype.
        * tree-ssa-operands.c (get_expr_operands): For commutative
        operators and relational comparisons, canonicalize the
        order of the operands.

        * gcc.dg/tree-ssa/20040615-1.c: New test.
        * gcc.dg/tree-ssa/20030824-1.c: Update expected output to
        be less sensitive to operand ordering.
        * gcc.dg/tree-ssa/20030824-2.c: Likewise.

From-SVN: r83224
2004-06-15 23:09:41 -06:00
Danny Smith 3e97fe67e3 * g++.dg/abi/bitfield3.C: Add comment..
From-SVN: r83223
2004-06-16 04:00:31 +00:00
Richard Henderson 325c369115 c-common.c (lang_gimplify_stmt): Remove next_p argument.
* c-common.c (lang_gimplify_stmt): Remove next_p argument.
	(if_elt, if_stack, if_stack_space, c_expand_start_cond, c_finish_then,
	c_expand_end_cond, c_expand_start_else, c_finish_else, c_begin_if_stmt,
	c_begin_while_stmt, c_finish_while_stmt_cond): Move to c-typeck.c.
	(finish_fname_decls, fname_decl): Use statement_lists.
	(c_expand_expr_stmt): Don't set last_expr_type.
	(c_type_hash): Fix indentation.
	(c_safe_from_p): Don't follow TREE_CHAIN.
	(c_tree_chain_matters_p): Remove.
	* c-common.def (SCOPE_STMT): Remove.
	(CLEANUP_STMT): Redefine to contain its own body.
	* c-common.h (struct stmt_tree_s): Remove x_last_stmt,
	x_last_expr_type, x_last_expr_filename, x_scope_stmt_stack.
	Add x_cur_stmt_list.
	(last_tree, last_expr_type, last_expr_filename, RECHAIN_STMTS): Remove.
	(cur_stmt_list): New.
	(STATEMENT_LIST_STMT_EXPR): New.
	(SCOPE_BEGIN_P, SCOPE_END_P, SCOPE_STMT_BLOCK, SCOPE_NULLIFIED_P,
	SCOPE_NO_CLEANUPS_P, SCOPE_PARTIAL_P, NEW_FOR_SCOPE_P): Remove.
	(CLEANUP_BODY): New.
	(CLEANUP_DECL): Move to operand 2.
	(c_common_stmt_codes): Remove SCOPE_STMT.
	(COMPOUND_STMT_NO_SCOPE, COMPOUND_STMT_BODY_BLOCK): Remove.
	* c-decl.c (c_scope_stmt_stack, current_scope_stmt_stack): Remove.
	(c_push_function_context, c_pop_function_context): Don't save it.
	(finish_decl): Set TREE_USED on the decl for a cleanup.
	Use push_cleanup.
	(store_parm_decls): Use statement lists.
	(finish_function): Remove compstmt rule workaround.  Use statement
	lists.  Call finish_fname_decls after finalizing the body.
	(c_begin_compound_stmt): Move to c-typeck.c.
	* c-dump.c (c_dump_tree): Remove SCOPE_STMT.
	* c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts): New.
	(c_genericize): Invoke them.
	(c_gimplify_stmt): Don't look through TREE_CHAIN.  Kill SCOPE_STMT.
	(c_build_bind_expr): Export.
	(gimplify_block, gimplify_cleanup): Remove.
	(gimplify_condition): Use gimplify_stmt.
	(gimplify_for_stmt): Remove FOR_INIT_STMT chaining hack.
	(gimplify_if_stmt): Remove recursion hack.
	(c_gimplify_expr): Remove STMT_EXPR handling.
	(stmt_expr_last_stmt, gimplify_stmt_expr): Remove.
	(is_last_stmt_of_scope): Remove.
	* c-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
	* c-mudflap.c (mflang_flush_calls): Use c_begin_compound_stmt,
	c_end_compound_stmt.
	* c-objc-common.c (build_cdtor): Likewise.
	* c-parse.in (primary): Use c_finish_stmt_expr.
	(push_scope, pop_scope): Remove.
	(c99_block_start, compstmt_start): Use c_begin_compound_stmt.
	(c99_block_end, compstmt): Use c_end_compound_stmt.
	(c99_block_lineno_labeled_stmt): Likewise.
	(compstmt_primary_start): Use c_begin_stmt_expr.
	(simple_if, select_or_iter_stmt): Update calls to stmt builders.
	(do_stmt_start): Fill in body directly.
	(lineno_stmt): Avoid setting lineno on constants.
	* c-pretty-print.c (pp_c_statement): Handle STATEMENT_LIST.
	Remove SCOPE_STMT.
	* c-semantics.c (begin_stmt_tree): Remove.
	(push_stmt_list, re_push_stmt_list, pop_stmt_list): New.
	(add_stmt): Use statement lists.
	(add_scope_stmt, finish_stmt_tree): Remove.
	(push_cleanup): New.
	* c-tree.h: Move some decls from c-common.h.
	* c-typeck.c (c_tree_expr_nonnegative_p): Simplify for statement lists.
	(do_case, c_finish_case): Likewise.
	(c_finish_then): Take body for then as argument.
	(c_finish_else): Similarly.
	(c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
	c_finish_for_stmt_incr, c_finish_for_stmt): New.
	(c_begin_stmt_expr, c_finish_stmt_expr): New.
	(c_begin_compound_stmt): Do scope management.
	(c_end_compound_stmt): New.
	* fold-const.c (tree_expr_nonnegative_p): Fix BIND_EXPR.
	* gimplify.c (voidify_wrapper_expr): Accept temporary argument.
	Look through exception handling constructs.
	(gimplify_bind_expr): Accept temporary argument.
	(gimplify_target_expr): Special case BIND_EXPR bodies.
	(gimplify_expr): Handle fallback == fb_none like a statement.
	* langhooks-def.h (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Kill.
	* langhooks.c (lhd_tree_inlining_tree_chain_matters_p): Remove.
	* langhooks.h (tree_chain_matters_p): Remove.
	* stub-objc.c (objc_clear_super_receiver): New.
	* tree-gimple.h (voidify_wrapper_expr): Update decl.
	(append_to_statement_list, append_to_statement_list_force): Move
	to tree-iterator.h.
	* tree-inline.c (expand_call_inline): Update call.
	(clone_body): Use statement lists.
	(walk_tree): Don't check tree_chain_matters_p.
	(copy_tree_r): Likewise.
	* tree-iterator.c (alloc_stmt_list): Clear lang bits.
	(tsi_link_before, tsi_link_after): Set TREE_SIDE_EFFECTS properly.
	* tree-iterator.h (append_to_statement_list,
	append_to_statement_list_force): Moved from tree-gimple.h.
	* tree-pretty-print.c (dump_generic_node): Clean up TARGET_EXPR dump.
	* objc/objc-act.c (build_module_descriptor): Use c_begin_compound_stmt.
	(objc_enter_block): Likewise.
	(objc_exit_block): Use c_end_compound_stmt.
	(objc_build_try_enter_fragment): Add #error and comment for
	rewriting for OBJCPLUS.
	(objc_build_extract_fragment, objc_build_try_epilogue,
	objc_build_catch_stmt, objc_build_finally_prologue,
	objc_build_finally_epilogue): Update for C statement builders.
	* objc/objc-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P):
	Remove.
cp/
	* call.c (initialize_reference): Don't build CLEANUP_STMT here.
	* cp-gimplify.c (cp_gimplify_stmt): Remove next_p argument.
	(genericize_try_block): Use gimplify_stmt.
	(genericize_catch_block, genericize_eh_spec_block): Likewise.
	(cp_gimplify_init_expr): Remove STMT_EXPR special case.
	(gimplify_must_not_throw_expr): Update voidify_wrapper_expr call.
	* cp-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
	(cp_tree_chain_matters_p): Remove.
	* cp-tree.h (COMPOUND_STMT_TRY_BLOCK): New.
	(COMPOUND_STMT_BODY_BLOCK): New.
	(STATEMENT_LIST_NO_SCOPE, STATEMENT_LIST_TRY_BLOCK): New.
	(EXPR_STMT_STMT_EXPR_RESULT): New.
	(building_stmt_tree): Check cur_stmt_list.
	(tf_stmt_expr_cmpd, tf_stmt_expr_body): Remove.
	(BCS_NO_SCOPE, BCS_TRY_BLOCK, BCS_FN_BODY): New.
	* decl.c (poplevel): Use pop_stmt_list for minding cleanups.
	(cp_finish_decl): Use push_cleanup.
	(start_function, finish_function): Use statement lists.
	(finish_stmt): Do nothing.
	* except.c (begin_eh_spec_block): Use statement lists.
	(check_handlers_1, check_handlers): Likewise.
	* init.c (construct_virtual_base): Don't add extra compound stmts.
	(build_vec_init): Likewise.
	* name-lookup.c (maybe_push_cleanup_level): Use statement lists.
	* name-lookup.h (struct cp_binding_level): Add statement_list.
	* parser.c (cp_parser_statement): Take the STMT_EXPR node, not a bool.
	(cp_parser_labeled_statement, cp_parser_expression_statement,
	cp_parser_statement_seq_opt): Likewise.
	(cp_parser_compound_statement): Likewise.  Take bool for try block.
	(cp_parser_selection_statement): Tidy if processing.
	(cp_parser_already_scoped_statement): Rewrite to do what it says.
	* pt.c (tsubst_copy): Move STMT_EXPR to tsubst_expr.
	(tsubst_expr): Rewrite STMT_EXPR processing.  Handle STATEMENT_LIST.
	Mind COMPOUND_STMT_TRY_BLOCK, EXPR_STMT_STMT_EXPR_RESULT.
	* semantics.c (do_poplevel, do_pushlevel): Use statement lists.
	(finish_cond): New, rewritten from FINISH_COND.
	(simplify_loop_decl_cond): New.
	(finish_expr_stmt): Avoid nested EXPR_STMTs.
	(begin_if_stmt, finish_if_stmt_cond, finish_then_clause,
	begin_else_clause, finish_else_clause, finish_if_stmt,
	begin_while_stmt, finish_while_stmt_cond, finish_while_stmt,
	begin_do_stmt, finish_do_body, begin_for_stmt, finish_for_init_stmt,
	finish_for_cond, finish_for_stmt, begin_switch_stmt,
	finish_switch_cond, finish_switch_stmt, begin_try_block,
	finish_try_block, finish_cleanup_try_block, finish_function_try_block,
	finish_handler_sequence, finish_function_handler_sequence,
	begin_handler, finish_handler_parms, finish_handler,
	begin_stmt_expr, finish_stmt_expr_expr, finish_stmt_expr): Rewrite
	using statement lists.
	(begin_compound_stmt): Replace has_no_scope argument with flags.
	Update all callers.  Use statement lists.
	(finish_compound_stmt): Likewise.
	(finish_decl_cleanup, finish_eh_cleanup): Use push_cleanup.
	(current_scope_stmt_stack): Remove.
	(simplify_aggr_init_expr): Don't muck with TREE_CHAIN.
	* typeck2.c (split_nonconstant_init_1, split_nonconstant_init):
	Rewrite with statement lists.
testsuite/
	* g++.dg/ext/stmtexpr1.C: XFAIL.
	* gcc.dg/20030612-1.c: XFAIL.

From-SVN: r83221
2004-06-15 18:21:38 -07:00
GCC Administrator aaab7bb6d7 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83219.2
2004-06-16 00:16:15 +00:00
GCC Administrator a0543ff31c Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83217.2
2004-06-16 00:16:11 +00:00
Eric Christopher 6bf3d92c78 asm5.c: New.
2004-06-15  Eric Christopher  <echristo@redhat.com>

        * g++.dg/charset/asm5.c: New.
        * gcc.dg/charset/asm6.c: New.

From-SVN: r83215
2004-06-15 23:09:24 +00:00
Zdenek Dvorak 161b0a84ef df.c (df_reg_clobber_gen): Removed.
* df.c (df_reg_clobber_gen): Removed.
	(df_bb_rd_local_compute, df_insn_refs_record, df_rd_local_compute):
	Make more effective for hard regs.
	* ra-build.c (livethrough_conflicts_bb): Check contains_call.

From-SVN: r83204
2004-06-15 22:15:21 +00:00
Tobias Schlüter 40bc204a9b Revert previous inintended changes.
From-SVN: r83203
2004-06-15 23:53:26 +02:00
Tobias Schlüter 6ef4215401 re PR fortran/15962 (constant expression not recognized as such)
fortran/
PR fortran/15962
* match.c (match_case_selector): Call gfc_match_init_expr
instead of gfc_match_expr.
* resolve.c (validate_case_label_expr): No need to check for
constant, since it wouldn't have been matched with the fix to
match.c.
testsuite/
PR fortran/15962
* gfortran.fortran-torture/execute/select_1.f90: New test.

From-SVN: r83202
2004-06-15 23:50:50 +02:00
Alexandre Oliva 0173bb6f2d c-pragma.h (c_lex_string_translate): Change type to int.
gcc/ChangeLog:
* c-pragma.h (c_lex_string_translate): Change type to int.
* c-parse.in: Change all assignments of c_lex_string_translate
to true and false to 1 and 0.
* c-lex.c (c_lex_string_translate): Likewise.
(lex_string): Convert string without translation in the -1
case.
gcc/cp/ChangeLog:
* parser.c: Change all assignments of c_lex_string_translate
to true and false to 1 and 0.
(cp_lexer_read_token): Convert type of the translated string.
(cp_parser_skip_to_closing_parentheses): Preserve original
value of c_lex_string_translate, and set it to -1 while
running.
(cp_parser_cache_group): Likewise.
(cp_parser_cache_group_1): Renamed.
(cp_parser_asm_operand_list): Remove redundant setting of
c_lex_string_translate.
(cp_parser_primary_expression) [CPP_STRING, CPP_WSTRING]:
Handle chained strings.

From-SVN: r83201
2004-06-15 21:43:21 +00:00
Mark G. Adams d0b25f9a2b * convert.h: Add include guards
From-SVN: r83200
2004-06-15 21:04:15 +00:00
Andrew Pinski 1f2c9ba511 re PR c++/14639 ([non-unit-at-a-time] Incorrect emission of unused compiler-generated destructor)
2004-06-12  Andrew Pinski  <apinski@apple.com>

        PR c++/14639
        Revert:
        2004-06-02  Andrew Pinski  <pinskia@physics.uc.edu>

                * cp-tree.h: Fix typo.

                * cp-tree.h: Include cgraph.h
                (DECL_NEEDED_P): Use cgraph_*node on the decl instead of
                TREE_SYMBOL_REFERENCED on the DECL_ASSEMBLER_NAME of the decl.

From-SVN: r83199
2004-06-15 13:52:00 -07:00
Jason Merrill eae29fe1dc re PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)
PR tree-optimization/14107
        * decl.c (finish_function): Warn about no return in all functions.

From-SVN: r83198
2004-06-15 16:38:40 -04:00
Daniel Berlin 0566b51e1f tree-flow-inline.h: Document all functions.
2004-06-15  Daniel Berlin  <dberlin@dberlin.org>

	* tree-flow-inline.h: Document all functions.

From-SVN: r83197
2004-06-15 18:51:43 +00:00
Daniel Berlin c8a6f15498 tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
2004-06-15  Daniel Berlin  <dberlin@dberlin.org>

	* tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
	* tree-dfa.c (create_stmt_ann): Ditto.
	* tree-pretty-print.c (dump_generic_node): Remove E* node handling.
	* tree-inline.c (estimate_num_insns_1): Ditto.
	* tree.c (tree_size): Ditto.
	(make_node_stat): Ditto.
	(tree_node_structure): Ditto.
	(ephi_node_elt_check_failed): Remove.
	(is_essa_node): Ditto.
	* tree.def (EPHI_NODE): Ditto.
	(EEXIT_NODE): Ditto.
	(EUSE_NODE): Ditto.
	(EKILL_NODE): Ditto.
	* tree.h (EREF_NODE_CHECK): Remove.
	(EPHI_NODE_ELT_CHECK): Ditto.
	(struct tree_eref_common): Ditto.
	(struct tree_euse_node): Ditto.
	(struct ephi_arg_d): Ditto.
	(struct tree_ephi_node): Ditto.
	(ephi_node_elt_check_failed): Remove prototype.
	(is_essa_node): Ditto.
	(enum tree_node_structure_enum): Remove TS_E*_NODE.
	(union tree_node): Remove E*_NODE uses.

From-SVN: r83196
2004-06-15 18:37:34 +00:00
Jerry Quinn f8cfc6aa07 alias.c (record_set, [...]): Use REG_P.
2004-06-15  Jerry Quinn  <jlquinn@optonline.net>

	* alias.c (record_set, record_base_value, canon_rtx, get_addr,
	nonlocal_mentioned_p_1, init_alias_analysis): Use REG_P.
	* bt-load.c (find_btr_reference, insn_sets_btr_p, note_btr_set):
	Likewise.
	* builtins.c (expand_builtin_setjmp, expand_builtin_apply,
	expand_builtin_mathfn, expand_builtin_strlen, expand_builtin_memcmp,
	expand_builtin_strcmp, expand_builtin_strncmp,
	expand_builtin_frame_address): Likewise.
	* caller-save.c (mark_set_regs, add_stored_regs, mark_referenced_regs,
	insert_one_insn): Likewise.
	* calls.c (prepare_call_address, precompute_register_parameters,
	precompute_arguments, expand_call, emit_library_call_value_1): Likewise.
	* cfganal.c (flow_active_insn_p): Likewise.
	* combine.c (set_nonzero_bits_and_sign_copies, can_combine_p,
	combinable_i3pat, try_combine, find_split_point, COMBINE_RTX_EQUAL_P,
	subst, combine_simplify_rtx, simplify_if_then_else, simplify_set,
	make_extraction, recog_for_combine, gen_lowpart_for_combine,
	simplify_comparison, record_dead_and_set_regs_1,
	record_dead_and_set_regs, record_promoted_value,
	check_promoted_subreg, get_last_value_validate, get_last_value,
	reg_dead_at_p_1, reg_bitfield_target_p, distribute_notes,
	unmentioned_reg_p_1): Likewise.
	* conflict.c (mark_reg): Likewise.
	* cse.c (HASH, COST, COST_IN, approx_reg_cost_1, notreg_cost,
	mention_regs, insert_regs, lookup, lookup_for_remove, insert,
	merge_equiv_classes, flush_hash_table, invalidate,
	remove_invalid_refs, remove_invalid_subreg_refs, rehash_using_reg,
	invalidate_for_call, use_related_value, canon_hash, exp_equiv_p,
	cse_rtx_varies_p, canon_reg, find_best_addr, fold_rtx, equiv_constant,
	record_jump_cond, cse_insn, addr_affects_sp_p,
	invalidate_from_clobbers, cse_process_notes, cse_around_loop,
	cse_set_around_loop, count_reg_usage, set_live_p, cse_change_cc_mode,
	cse_cc_succs, cse_condition_code_reg): Likewise.
	* cselib.c (cselib_reg_set_mode, rtx_equal_for_cselib_p,
	cselib_lookup, cselib_invalidate_regno, cselib_invalidate_rtx,
	cselib_record_set, cselib_record_sets): Likewise.
	* dbxout.c (dbxout_symbol_location, dbxout_parms, dbxout_reg_parms,
	dbxout_block): Likewise.
	* df.c (df_ref_record, df_def_record_1, df_uses_record): Likewise.
	* dojump.c (do_jump): Likewise.
	* dwarf2out.c (dwarf2out_frame_debug_expr, is_pseudo_reg,
	is_based_loc, rtl_for_decl_location): Likewise.
	* emit-rtl.c (set_reg_attrs_for_parm, set_decl_rtl,
	set_decl_incoming_rtl, mark_user_reg): Likewise.
	* explow.c (copy_all_regs, copy_all_regs, memory_address, force_reg,
	copy_to_suggested_reg, allocate_dynamic_stack_space,
	probe_stack_range, hard_function_value): Likewise.
	* expmed.c (store_bit_field, store_fixed_bit_field,
	store_split_bit_field, extract_bit_field, extract_fixed_bit_field,
	extract_split_bit_field, expand_divmod, emit_store_flag_force):
	Likewise.
	* expr.c (convert_move, convert_modes,
	block_move_libcall_safe_for_call_parm, emit_group_load, use_reg,
	use_group_regs, emit_move_insn, emit_move_insn_1,
	compress_float_constant, push_block, emit_single_push_insn,
	emit_push_insn, get_subtarget, expand_assignment, store_expr,
	store_constructor, store_field, force_operand, safe_from_p,
	expand_expr_real_1, expand_increment, do_store_flag, do_tablejump):
	Likewise.
	* final.c (profile_function, final_scan_insn, alter_subreg,
	get_mem_expr_from_op, output_asm_operand_names, output_operand,
	only_leaf_regs_used, leaf_renumber_regs_insn): Likewise.
	* flow.c (verify_wide_reg_1, mark_regs_live_at_end,
	find_regno_partial, propagate_one_insn, init_propagate_block_info,
	insn_dead_p, libcall_dead_p, mark_set_1, not_reg_cond,
	attempt_auto_inc, find_auto_inc, mark_used_regs,
	count_or_remove_death_notes_bb): Likewise.
	* function.c (find_temp_slot_from_address, update_temp_slot_address,
	preserve_temp_slots, put_var_into_stack, fixup_var_refs_insn,
	fixup_var_refs_1, fixup_stack_1, optimize_bit_field, flush_addressof,
	put_addressof_into_stack, purge_addressof_1, insns_for_mem_walk,
	purge_single_hard_subreg_set, instantiate_decl,
	instantiate_virtual_regs_1, aggregate_value_p, assign_parms,
	promoted_input_arg, setjmp_vars_warning, setjmp_args_warning,
	setjmp_protect, setjmp_protect_args, fix_lexical_addr,
	expand_function_start, diddle_return_value, clobber_return_register,
	expand_function_end, keep_stack_depressed, handle_epilogue_set,
	update_epilogue_consts): Likewise.
	* genemit.c (gen_exp, gen_insn): Likewise.
	* genrecog.c (make_insn_sequence): Likewise.
	* global.c (global_conflicts, expand_preferences, mark_reg_store,
	mark_reg_conflicts, set_preference, reg_becomes_live,
	build_insn_chain, mark_reg_change): Likewise.
	* haifa_sched.c (CONST_BASED_ADDRESS_P, find_set_reg_weight):
	Likewise.
	* ifcvt.c (noce_try_abs, noce_get_condition, noce_process_if_block):
	Likewise.
	* integrate.c (copy_rtx_and_substitute, try_constants,
	subst_constants, mark_stores, allocate_initial_values): Likewise.
	* jump.c (reversed_comparison_code_parts, delete_prior_computation,
	delete_computation, rtx_renumbered_equal_p, true_regnum,
	reg_or_subregno): Likewise.
	* lcm.c (reg_dies, reg_becomes_live): Likewise.
	* local-alloc.c (validate_equiv_mem_from_store, validate_equiv_mem,
	update_equiv_regs, no_equiv, block_alloc, combine_regs, reg_is_set,
	wipe_dead_reg, no_conflict_p): Likewise.
	* loop-iv.c (simple_reg_p, simple_set_p, kill_sets,
	iv_get_reaching_def, iv_analyze_biv, altered_reg_used, mark_altered,
	simple_rhs_p, simplify_using_assignment, implies_p): Likewise.
	* loop.c (scan_loop, combine_movables, rtx_equal_for_loop_p,
	move_movables, note_set_pseudo_multiple_uses, consec_sets_invariant_p,
	find_single_use_in_loop, count_one_set, loop_bivs_init_find,
	loop_givs_rescan, check_insn_for_bivs, check_insn_for_givs,
	valid_initial_value_p, simplify_giv_expr, consec_sets_giv,
	loop_regs_update, check_dbra_loop, maybe_eliminate_biv,
	maybe_eliminate_biv_1, record_initial, update_reg_last_use,
	canonicalize_condition, loop_regs_scan, load_mems, try_copy_prop,
	try_swap_copy_prop): Likewise.
	* optabs.c (expand_binop, expand_vector_binop, expand_vector_unop,
	expand_abs, emit_no_conflict_block, emit_libcall_block, expand_float):
	Likewise.
	* postreload.c (reload_cse_simplify, reload_cse_simplify_set,
	reload_cse_simplify_operands, reload_combine,
	reload_combine_note_store, reload_combine_note_use,
	reload_cse_move2add, move2add_note_store): Likewise.
	* print-rtl.c (print_rtx): Likewise.
	* ra-build.c (copy_insn_p, remember_move, init_one_web_common,
	contains_pseudo, handle_asm_insn): Likewise.
	* ra-debug.c (ra_print_rtx_object, dump_constraints,
	dump_static_insn_cost): Likewise.
	* ra-rewrite.c (slots_overlap_p, emit_colors,
	remove_suspicious_death_notes): Likewise.
	* recog.c (validate_replace_rtx_1, find_single_use_1, find_single_use,
	register_operand, scratch_operand, nonmemory_operand,
	constrain_operands): Likewise.
	* reg-stack (check_asm_stack_operands, remove_regno_note,
	emit_swap_insn, swap_rtx_condition, subst_stack_regs_pat,
	subst_asm_stack_regs): Likewise.
	* regclass.c (scan_one_insn, record_reg_classes, copy_cost,
	record_address_regs, reg_scan_mark_refs): Likewise.
	* regmove.c (discover_flags_reg, replacement_quality,
	copy_src_to_dest, reg_is_remote_constant_p, regmove_optimize,
	fixup_match_1): Likewise.
	* regrename.c (note_sets, clear_dead_regs, build_def_use, kill_value,
	kill_set_value, copyprop_hardreg_forward_1): Likewise.
	* reload.c (MATCHES, push_secondary_reload, find_reusable_reload,
	reload_inner_reg_of_subreg, can_reload_into, push_reload,
	combine_reloads, find_dummy_reload, hard_reg_set_here_p,
	operands_match_p, decompose, find_reloads, find_reloads_toplev,
	find_reloads_address, subst_indexed_address, find_reloads_address_1,
	find_reloads_subreg_address, find_replacement,
	refers_to_regno_for_reload_p, reg_overlap_mentioned_for_reload_p,
	refers_to_mem_for_reload_p, find_equiv_reg, regno_clobbered_p): Likewise.
	* reload1.c (replace_pseudos_in, reload, calculate_needs_all_insns,
	find_reg, delete_dead_insn, alter_reg, eliminate_regs,
	elimination_effects, eliminate_regs_in_insn, scan_paradoxical_subregs,
	forget_old_reloads_1, reload_reg_free_for_value_p, choose_reload_regs,
	emit_input_reload_insns, emit_output_reload_insns, do_input_reload,
	do_output_reload, emit_reload_insns, gen_reload,
	delete_address_reloads_1, inc_for_reload): Likewise.
	* reorg.c (update_reg_dead_notes, fix_reg_dead_note,
	update_reg_unused_notes, fill_slots_from_thread): Likewise.
	* resource.c (update_live_status, mark_referenced_resources,
	mark_set_resources, mark_target_live_regs): Likewise.
	* rtlanal.c (nonzero_address_p, get_jump_table_offset,
	global_reg_mentioned_p_1, reg_mentioned_p, reg_referenced_p,
	reg_set_p, set_noop_p, find_last_value, refers_to_regno_p,
	note_stores, dead_or_set_p, dead_or_set_regno_p, find_regno_note,
	find_reg_fusage, find_regno_fusage, replace_regs, regno_use_in,
	parms_set, find_first_parameter_load, keep_with_call_p,
	hoist_test_store, hoist_update_store, address_cost, nonzero_bits1,
	num_sign_bit_copies1): Likewise.
	* rtlhooks.c (gen_lowpart_general): Likewise.
	* sched-deps.c (deps_may_trap_p, sched_analyze_1, sched_analyze_insn,
	sched_analyze): Likewise.
	* sched-rgn.c (check_live_1, update_live_1, sets_likely_spilled_1):
	Likewise.
	* sdbout.c (sdbout_symbol, sdbout_parms, sdbout_reg_parms): Likewise.
	* simplify-rtx.c (simplify_replace_rtx, simplify_unary_operation,
	simplify_binary_operation, simplify_const_relational_operation,
	simplify_subreg): Likewise.
	* stmt.c (decl_conflicts_with_clobbers_p, expand_asm_operands,
	expand_end_stmt_expr, expand_return, expand_decl,
	expand_anon_union_decl): Likewise.
	* unroll.c (precondition_loop_p, calculate_giv_inc, copy_loop_body,
	find_splittable_regs, find_splittable_givs, find_common_reg_term,
	loop_iterations): Likewise.
	* var-tracking.c (variable_union, variable_part_different_p,
	variable_different_p, count_uses, add_uses, add_stores,
	compute_bb_dataflow, set_variable_part, delete_variable_part,
	emit_notes_in_bb, vt_get_decl_and_offset, vt_add_function_parameters):
	Likewise.
	* varasm.c (assemble_variable): Likewise.

From-SVN: r83195
2004-06-15 18:02:40 +00:00
Chris Demetriou 347b63a2c9 linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove definition.
2004-06-15  Chris Demetriou  <cgd@broadcom.com>

        * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
        definition.
        * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
        #undef and #if 0'd definition.

From-SVN: r83193
2004-06-15 10:12:15 -07:00
J"orn Rennecke e867970356 * combine.c (distribute_notes): Comment typo fix.
From-SVN: r83191
2004-06-15 16:55:27 +01:00
Paul Brook 844f5ccfbb * gcc.dg/arm-mmx-1.c: Use asm to clobber registers.
From-SVN: r83189
2004-06-15 15:25:52 +00:00
Roger Sayle 0792ab197b expmed.c (synth_mult): Mask bits of the multiplier to the machine mode of the multiplication.
* expmed.c (synth_mult): Mask bits of the multiplier to the
	machine mode of the multiplication.  Don't consider shifts
	by more than (or equal to) the width of the operation's mode.

From-SVN: r83187
2004-06-15 15:06:14 +00:00
Paolo Bonzini 5a4f18181b gcc_update (libmudflap/configure): Depend on libmudflap/configure.ac instead of libmudflap/configure.in
2004-06-14  Paolo Bonzini  <bonzini@gnu.org>

	* gcc_update (libmudflap/configure): Depend on
	libmudflap/configure.ac instead of libmudflap/configure.in

From-SVN: r83186
2004-06-15 14:59:58 +00:00
Paolo Bonzini 0dce8934d7 install.texi: Yet another update for autoconf and automake versions.
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* doc/install.texi: Yet another update for autoconf
	and automake versions.

From-SVN: r83185
2004-06-15 14:53:26 +00:00
Paolo Bonzini 076e544330 configure.ac: New name of configure.in.
libmudflap/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac: New name of configure.in.  Update
	AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
	AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
	Autoconf 2.5x and Automake 1.7 or later.
	* configure.in: Remove.
	* configure: Regenerate.

	* Makefile.am: Remove useless multilib rules.
	* Makefile.in: Regenerate.

libstdc++-v3/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* acinclude.m4: Remove useless multilib configury.
	* Makefile.am: Remove useless multilib rules.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.
	* configure.ac: Use AM_ENABLE_MULTILIB.
	* configure: Regenerate.

zlib/ChangeLog.gcj:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am: Remove useless multilib rules.
	* configure.ac: Rewrite multilib support to use
	features of recent automakes.
	* aclocal.m4: Regenerate with Automake 1.8.5.
	* Makefile.in: Regenerate with Automake 1.8.5.
	* configure: Regenerate.

libffi/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am: Remove useless multilib rules.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate with automake 1.8.5.
	* configure.ac: Remove useless multilib configury.
	* configure: Regenerate.

From-SVN: r83184
2004-06-15 14:47:55 +00:00
Paolo Carlini 659e82ad0f hashtable.h: Trivial formatting fixes.
2004-06-15  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/hashtable.h: Trivial formatting fixes.
	* include/ext/rb_tree: Likewise.

From-SVN: r83183
2004-06-15 13:43:56 +00:00
Andrew Haley d1238423cd natSystem.cc (getenv0): Don't assume environment variable is Latin 1 coded.
2004-06-15  Andrew Haley  <aph@redhat.com>

        * java/lang/natSystem.cc (getenv0): Don't assume environment
        variable is Latin 1 coded.

From-SVN: r83182
2004-06-15 13:43:33 +00:00
Paolo Bonzini 096f22f424 function.h (struct function): Remove cannot_inline field.
gcc/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* function.h (struct function): Remove cannot_inline field.
	(current_function_cannot_inline): Remove.
	* passes.c (rest_of_compilation): Reset DECL_DEFER_OUTPUT.
	Simplify conditionals to ignore warn_return_type.
	* tree-optimize.c (tree_rest_of_compilation): Do not reset
	DECL_DEFER_OUTPUT.
	* objc/objc-act.c (build_module_descriptor, finish_method_def):
	Do not set current_function_cannot_inline.

gcc/java/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* class.c (emit_register_classes): Make the function uninlinable,
	do not set current_function_cannot_inline.
	* resource.c (write_resource_constructor): Do not reset
	flag_inline_functions around rest_of_compilation.

gcc/cp/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* cp-tree.h (struct language_function): Remove cannot_inline.
	* decl.c (save_function_data): cannot_inline is no more.
	(cxx_push_function_context): Likewise.
	* decl2.c (start_objects, start_static_storage_duration_function):
	Reset DECL_INLINE, set DECL_UNINLINABLE.

From-SVN: r83181
2004-06-15 12:46:07 +00:00
J"orn Rennecke 8cff2a9522 cfglayout.c (fixup_reorder_chain): Handle case where the destination of E_TAKEN is EXIT_BLOCK_PTR.
* cfglayout.c (fixup_reorder_chain): Handle case where the
	destination of E_TAKEN is EXIT_BLOCK_PTR.

From-SVN: r83179
2004-06-15 12:58:40 +01:00
Diego Novillo 9264db1699 * tree-ssa-copy.c (cprop_into_successor_phis): Fix typo.
From-SVN: r83177
2004-06-15 07:49:50 -04:00
Kazuhiro Inaoka de5c90ffa4 * longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.
From-SVN: r83174
2004-06-15 10:40:44 +00:00
Paolo Bonzini 3dd8069d49 fold-const.c (operand_equal_p): Update comment.
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* fold-const.c (operand_equal_p): Update comment.

From-SVN: r83173
2004-06-15 10:27:30 +00:00
Kazuhiro Inaoka 7b14411a87 m32r.h (RETURN_ADDR_RTX): Define.
* config/m32r/m32r.h (RETURN_ADDR_RTX): Define.
  (INCOMING_RETURN_ADDR_RTX): Define.
* config/m32r/m32r-protos.h (m32r_return_addr): Added.
* config/m32r/m32r.c (m32r_exppand_prologue): Changed for
  __builtin_return_address(0).
  (m32r_return_addr): Added for __builtin_return_address(0).
  (m32r_reload_lr): Ditto.

From-SVN: r83171
2004-06-15 10:01:34 +00:00
Paolo Bonzini cf11c05cfd install.texi (Prerequisites): Update libbanshee, fastjar, libcpp, libjava/libltdl entries to automake 1.8.5.
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* doc/install.texi (Prerequisites): Update libbanshee,
	fastjar, libcpp, libjava/libltdl entries to
	automake 1.8.5.

From-SVN: r83170
2004-06-15 07:50:45 +00:00
Paolo Bonzini 9ac926b197 Added .cvsignore entry for autom4te.cache to boehm-gc, libffi and
libmudflap.

From-SVN: r83169
2004-06-15 07:42:08 +00:00
Paolo Bonzini 608cb764bb acinclude.m4: Quote first argument of AC_DEFUNs.
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* acinclude.m4: Quote first argument of AC_DEFUNs.
	* aclocal.m4: Regenerate with automake 1.8.
	* Makefile.in: Likewise.
	* configure: Regenerate.
	* .cvsignore: New file.

From-SVN: r83168
2004-06-15 07:36:33 +00:00
Paolo Bonzini 159d522418 Makefile.in: Regenerate with automake 1.8.5.
libcpp/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in: Regenerate with automake 1.8.5.
	* aclocal.m4: Likewise.
	* configure: Regenerate.

libjava/libltdl/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in: Regenerate with Automake 1.8.5.
	* aclocal.m4: Likewise.
	* configure: Regenerate.

libbanshee/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in: Regenerate with Automake 1.8.5.
	* engine/Makefile.in: Likewise.
	* points-to/Makefile.in: Likewise.
	* libcompat/Makefile.in: Likewise.
	* aclocal.m4: Likewise.
	* configure: Regenerate.
	* .cvsignore: New file.

From-SVN: r83167
2004-06-15 07:32:58 +00:00
Eric Botcazou 4d7694fc06 function.c (fixup_var_refs): Also adjust the start of sequence after fixing up the insns.
* function.c (fixup_var_refs): Also adjust the start of sequence
	after fixing up the insns.

Co-Authored-By: Olivier Hainque <hainque@act-europe.fr>

From-SVN: r83166
2004-06-15 06:16:48 +00:00
Giovanni Bajo 1f28d17529 * gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
From-SVN: r83160
2004-06-15 02:41:21 +00:00
Giovanni Bajo c566721f93 re PR c++/15967 (ICE on ambiguous operator new in class hierarchy)
PR c++/15967
	* search.c (lookup_field): Propagate the ambiguity list.
	(lookup_fnfields): Likewise.

	PR c++/15967
	* g++.dg/lookup/crash3.C: New test.

From-SVN: r83158
2004-06-15 01:46:21 +00:00
Giovanni Bajo 4e0f4df508 re PR c++/15947 (Puzzling error message for wrong destructor declaration in template class)
PR c++/15947
	* parser.c (cp_parser_template_name): Ctors/dtors never need a
	template keyword to disambiguate.

	PR c++/15947
	* g++.dg/parse/dtor4.C: New test.

From-SVN: r83154
2004-06-15 00:24:47 +00:00
GCC Administrator 6fb25ec080 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83152.2
2004-06-15 00:16:23 +00:00
GCC Administrator 70411eceaa Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83151.2
2004-06-15 00:16:16 +00:00
Benjamin Kosnik 3a8c5d8c26 install.texi (Prerequisites): Update libstdc++ entry to automake 1.8.5.
2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/install.texi (Prerequisites): Update libstdc++ entry to
	automake 1.8.5.

From-SVN: r83147
2004-06-14 22:52:35 +00:00
Eric Christopher f26c1794c3 s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf) to -mtpf-trace (-mno-tpf-trace).
2004-06-14  Eric Christopher  <echristo@redhat.com>

	* config/s390/s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf)
	to -mtpf-trace (-mno-tpf-trace).
	* doc/invoke.texi (S/390 and zSeries Options): Add tpf option
	documentation.

From-SVN: r83135
2004-06-14 21:36:40 +00:00
Eric Botcazou 36598e94de * real.c: Fix bit count in head comment.
From-SVN: r83133
2004-06-14 21:07:07 +00:00
Jeff Law daa2b95a4f tree-ssa.c (kill_redundant_phi_nodes): More correctly handle PHIs where the destination or an argument is marked with...
* tree-ssa.c (kill_redundant_phi_nodes): More correctly handle
        PHIs where the destination or an argument is marked with
        SSA_NAME_OCCURS_IN_ABNORMAL_PHI.


	* gcc.c-torture/20040614-1.c: New test.

From-SVN: r83132
2004-06-14 14:41:41 -06:00
Paolo Carlini d962e073a0 hash_map: Trivial formatting fixes.
2004-06-14  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/hash_map: Trivial formatting fixes.
	* include/ext/hash_set: Likewise.
	* include/ext/memory: Likewise.
	* include/ext/numeric: Likewise.

From-SVN: r83131
2004-06-14 19:40:45 +00:00
Tobias Schlüter f51d8522f7 Fix ChangeLog, fix parentheses from previous patch to trans-intrinsic.c
From-SVN: r83128
2004-06-14 21:25:33 +02:00
Tobias Schlüter 7031baf4de re PR fortran/15211 (ICE with LEN intrinsic)
fortran/
PR fortran/15211
* trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays
of strings.

testsuite/
PR fortran/15211
* gfortran.fortran-torture/execute/intrinsic_len.f90: Also test
LEN of a character array.

From-SVN: r83126
2004-06-14 20:50:44 +02:00