+2004-07-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Do not
+ destroy dominance information.
+ * passes.c (rest_of_handle_loop2): Free dominance information.
+ * tree-cfg.c (cleanup_tree_cfg): Remove unreachable blocks before
+ jump threading.
+ (thread_jumps): Update dominance information and remove unreachable
+ blocks.
+ * tree-ssa-phiopt.c (replace_phi_with_stmt): Update dominance
+ information and remove the unreachable block.
+
+2004-07-17 Graham Stott <graham.stott@btinternet.com>
+
+ * emit-rtl.c (reorder_insns): Don't set BB for a BARRIER insn.
+
+2004-07-17 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * doc/sourcebuild.texi: Remove libf2c entry.
+
+2004-07-17 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/i386/i386.md (movv16qi_internal): Fix typo.
+
+2004-07-17 Steven Bosscher <stevenb@suse.de>
+
+ * final.c (final_scan_insn): Fix broken commit from previous
+ patch.
+
+2004-07-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (parser_build_binary_op): Condition warnings for
+ X<=Y<=Z on -Wparentheses instead of -Wextra.
+ * doc/invoke.texi: Update. Document that most of -Wparentheses is
+ supported for C only.
+
+2004-07-17 Steven Bosscher <stevenb@suse.de>
+
+ * cfgcleanup.c (try_simplify_condjump): Don't remove line
+ notes to avoid unreachable code warnings.
+ * toplev.c (backend_init): Don't emit line notes for
+ unreachable code warnings.
+
+ * combine.c (distribute_notes): Don't distribute a
+ REG_VTABLE_REF note.
+ * final.c (final_scan_insn): Don't handle it.
+ * rtl.c (reg_note_name): Remove it.
+ * rtl.h (enum reg_node): Dito.
+
+ * emit-rtl.c (force_line_numbers, restore_line_number_status):
+ Remove.
+ * rtl.h (force_line_numbers, restore_line_number_status):
+ Remove prototypes.
+
+ * stmt.c (using_eh_for_cleanups_p, using_eh_for_cleanups): Move...
+ * tree-eh.c (using_eh_for_cleanups_p): ...here. Make static.
+ (using_eh_for_cleanups): Also moved here.
+
+ * expr.c (expand_expr_real_1) <CASE_LABEL_EXPR>: Die if we see one.
+ <SWITCH_EXPR>: Die if we have a non-NULL SWITCH_BODY. Update calls
+ to expand_start_case and add_case_node.
+ * stmt.c (struct nesting): Cleanup unused fields condition_code,
+ last_unconditional_cleanup, nominal_type, printname, and
+ line_number_status.
+ (struct fixup_goto): Remove.
+ (struct stmt_status): Remove x_goto_fixup_chain field.
+ (goto_fixup_chain): Remove.
+ (strip_default_case_nodes, group_case_nodes, emit_jump_if_reachable,
+ pushcase, pushcase_range): Remove.
+ (expand_start_bindings_and_block): Don't set unused fields in
+ the nesting stack.
+ (expand_start_case, add_case_node): Cleanup unused formal arguments.
+ (expand_end_case_type): Don't simplify the case-list. Use emit_jump
+ instead of emit_jump_if_reachable.
+ (emit_case_nodes): Likewise.
+ * tree-cfg.c (group_case_labels, cleanup_dead_labels): No longer
+ static.
+ (update_eh_label): Work around left-over exception handing regions.
+ * tree-flow.h (group_case_labels, cleanup_dead_labels): Add protos.
+ * tree-optimize.c (execute_cleanup_cfg_post_optimizing): New function.
+ (pass_cleanup_cfg_post_optimizing): New pass.
+ (init_tree_optimization_passes): Run the new pass after all
+ optimizations.
+ * tree.h (pushcase, pushcase_range): Remove prototypes.
+ (expand_start_case, add_case_node): Update prototypes.
+
+2004-07-16 Krister Walfridsson <cato@df.lth.se>
+
+ * tree-inline.c (estimate_num_insns_1): Correct increase of count.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (std_expand_builtin_va_arg): Remove.
+ (expand_builtin_va_arg): Remove.
+ * expr.h: Don't declare them.
+ * gimplify.c (mark_decls_volatile_r): Remove.
+ (copy_if_shared_r): Don't call it.
+ * target-def.h: Don't test EXPAND_BUILTIN_VA_ARG.
+ * expr.c (expand_expr_real_1): Don't handle VA_ARG_EXPR.
+ * gimple-low.c (lower_stmt): Likewise.
+ * tree-cfg.c (cfg_remove_useless_stmts_bb): Likewise.
+ * tree-gimple.c (is_gimple_tmp_rhs, is_gimple_stmt): Likewise.
+ * tree-ssa-operands.c (get_expr_operands): Likewise.
+ * doc/tm.texi (TARGET_GIMPLIFY_VA_ARG_EXPR): Don't mention
+ EXPAND_BUILTIN_VA_ARG.
+ * system.h (EXPAND_BUILTIN_VA_ARG): Poison.
+ * config/alpha/alpha.h, config/alpha/unicosmk.h, config/i386/i386.h,
+ config/ia64/ia64.h, config/rs6000/rs6000.h, config/s390/s390.h,
+ config/sparc/sparc.h (EXPAND_BUILTIN_VA_ARG): Remove.
+
+2004-07-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c (insert_aux): Break out if we hit
+ a critical edge.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * basic-block.h (remove_fake_exit_edges): Declare.
+ * cfganal.c (remove_fake_predecessors): Rename from
+ remove_fake_successors; iterate over predecessors.
+ (remove_fake_exit_edges): New.
+ * cfgcleanup.c (try_optimize_cfg): Use it.
+ * gcse.c (one_pre_gcse_pass, store_motion): Likewise.
+ * predict.c (estimate_probability): Likewise.
+ (tree_estimate_probability, note_prediction_to_br_prob): Likewise.
+ * tree-cfg.c (make_edges): Likewise.
+ * tree-ssa-pre.c (fini_pre): Likewise.
+ * profile.c (instrument_edges): Don't remove_fake_edges.
+ (branch_prob): Do it earlier here.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * tree-ssa-operands.c (get_expr_operands): Fix 2004-07-15
+ switchification wrt CONSTRUCTOR. Document the reason.
+
+2004-07-16 Frank Ch. Eigler <fche@redhat.com>
+
+ * tree-mudflap.c (mf_file_function_line_tree): Correct typo
+ that prevented descriptive __mf_check source location strings.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * tree-def (WITH_SIZE_EXPR): New.
+ * explow.c (expr_size, int_expr_size): Handle WITH_SIZE_EXPR.
+ * expr.c (expand_expr_real_1): Likewise.
+ * gimplify.c (maybe_with_size_expr): New.
+ (gimplify_arg, gimplify_modify_expr): Use it.
+ (gimplify_modify_expr_to_memcpy): Take size parameter.
+ (gimplify_modify_expr_to_memset): Likewise.
+ (gimplify_expr): Handle WITH_SIZE_EXPR.
+ * tree-alias-common.c (find_func_aliases): Likewise.
+ * tree-eh.c (tree_could_trap_p): Likewise.
+ (tree_could_throw_p): Likewise.
+ * tree-gimple.c (is_gimple_lvalue): Likewise.
+ (get_call_expr_in): Likewise.
+ * tree-inline.c (estimate_num_insns_1): Likewise.
+ (expand_calls_inline): Likewise.
+ * tree-nested.c (convert_call_expr): Likewise.
+ * tree-pretty-print.c (dump_generic_node): Likewise.
+ * tree-sra.c (sra_walk_expr): Likewise.
+ * tree-ssa-alias.c (add_pointed_to_expr): Likewise.
+ * tree-ssa-ccp.c (get_rhs, set_rhs): Likewise.
+ * tree-ssa-operands.c (get_expr_operands): Likewise.
+ * tree-tailcall.c (find_tail_calls): Likewise.
+
+ * calls.c (expand_call): Reset old_stack_allocated after
+ calling emit_stack_restore.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * langhooks-def.h (LANG_HOOKS_TREE_INLINING_COPY_RES_DECL_FOR_INLINING,
+ lhd_tree_inlining_copy_res_decl_for_inlining): Remove.
+ * langhooks.c (lhd_tree_inlining_copy_res_decl_for_inlining): Remove.
+ * langhooks.h (struct lang_hooks_for_tree_inlining): Remove
+ copy_res_decl_for_inlining.
+
+ * tree-inline.c (declare_return_variable): New modify_dest argument.
+ Use it as the return value, when possible or manditory. Handle
+ TREE_ADDRESSABLE types.
+ (expand_call_inline): Extract MODIFY_EXPR lhs for call. Simplify
+ replacement of CALL_EXPR.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * tree-flow.h (struct var_ann_d): Remove has_hidden_use.
+ * gimple-low.c (expand_var_p): Don't check it.
+ * tree-ssa-alias.c (setup_pointers_and_addressables): Likewise.
+ * tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
+ * tree-ssa-operands.c (add_stmt_operand): Likewise.
+ * tree-dfa.c (find_hidden_use_vars, find_hidden_use_vars_r): Kill.
+ (find_referenced_vars): Don't call them.
+ * tree-flow-inline.h (has_hidden_use, set_has_hidden_use): Kill.
+
+2004-07-16 Richard Henderson <rth@redhat.com>
+
+ * function.c (pass_by_reference): True for all variable sized types.
+
+2004-07-16 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * Makefile.in (tree-pretty-print.o): Depend on tree-chrec.h.
+ * tree-pretty-print.c: Include tree-chrec.h.
+ (dump_generic_node): Pretty print SCEV_KNOWN, SCEV_NOT_KNOWN
+ and POLYNOMIAL_CHREC nodes.
+
+2004-07-16 Steve Ellcey <sje@cup.hp.com>
+
+ * builtins.c (expand_builtin_stpcpy): Do not create temporary
+ reg with VOIDmode.
+
+2004-07-16 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/eabi.asm (__eabi_convert): Fix typo (cmpi vs. cmpwi).
+
+2004-07-16 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md: Changed every occurence of BASE_REGISTER
+ to BASE_REGNUM.
+ * config/s390/s390.c: Likewise.
+ * config/s390/s390.h: Likewise.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (addsi3, adddi3): Remove special handling
+ of $sp adds. Remove REGNO checks from mips16 patterns.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Delete outdated comment.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (get_float_compare_codes): Delete.
+ (mips_emit_compare): New function, mostly extracted from
+ get_float_compare_codes and gen_conditional_branch.
+ (gen_conditional_branch, gen_conditional_move): Use it.
+
+2004-07-16 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * genautomata.c (add_vect): Speedup by using integers as
+ bit-vectors for walking through the comb_vect and finding
+ a match.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_zero_if_equal): Only use XORs if the second
+ operand is an uns_arith_operand; use subtraction otherwise.
+ * config/mips/mips.md (cmpsi, cmpdi): Allow any nonmemory_operand,
+ not just arith_operands.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (gen_int_relational): Delete.
+ (mips_emit_scc): Declare.
+ * config/mips/mips.c (internal_test): Delete.
+ (sle_operand, sleu_operand): New functions.
+ (map_test_to_internal_test, gen_int_relational): Delete.
+ (mips_emit_binary, mips_relational_operand_ok_p)
+ (mips_emit_int_relational, mips_zero_if_equal)
+ (mips_emit_scc): New functions.
+ (gen_conditional_branch): Rework to use mips_emit_int_relational.
+ * config/mips/mips.h (PREDICATE_CODES): Add sle_operand and
+ sleu_operand.
+ * config/mips/mips.md (seq, sne, sgt, sge, slt, sle, sgtu, sgeu)
+ (sltu, sleu): Use mips_emit_scc.
+ (*sge_[sd]i, *sgeu_[sd]i): New patterns.
+ (*sle_[sd]i, *sle_[sd]i_mips16): Use sle_operand.
+ (*sleu_[sd]i, *sleu_[sd]i_mips16): Use sleu_operand.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (*sgt_di_mips16): Fix destination constraint.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (*seq_[sd]i): Renamed from seq_[sd]i_zero.
+ (*sne_[sd]i): Likewise sne_[sd]i_zero.
+ (*sgt_[sd]i): ...and sgt_[sd]i.
+ (*slt_[sd]i): ...and slt_[sd]i.
+ (*sgtu_[sd]i): ...and sgtu_[sd]i.
+ (*sltu_[sd]i): ...and sltu_[sd]i.
+ (*sleu_[sd]i): ...and sleu_[sd]i_const.
+ Name previously unnamed mips16 patterns. Formatting fixes.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (cmp_operands): Renamed from branch_cmp.
+ (branch_type): Delete.
+ (gen_conditional_branch, gen_conditional_move)
+ (mips_gen_conditional_trap): Update after name change. Get the
+ comparison mode from cmp_operands[0].
+ * config/mips/mips.h (cmp_type, branch_type): Delete.
+ (cmp_operands): Renamed from branch_cmp.
+ * config/mips/mips.md (cmpsi, cmpdi, cmpsf, cmpdf): Update after
+ name change. Don't set branch_type.
+ (seq, sne, sgt, sge, slt, sle, sgtu, sgeu, sltu, sleu): Check the
+ mode class of cmp_operands[0] rather than branch_type. Update after
+ name change.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_rtx_costs): In mips16 code, set the cost
+ of 0...255 to 0 when inside a SET.
+
+2004-07-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Remove mips16 define_peepholes.
+
+2004-07-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c (init_pre): Connect infinite loops to exit.
+ (fini_pre): Remove fake edges.
+
+2004-07-15 Richard Henderson <rth@redhat.com>
+
+ * tree-ssa-operands.c (get_expr_operands): Use a switch. Split out...
+ (get_indirect_ref_operands, get_call_expr_operands): ... these.
+
+2004-07-15 Nathan Sidwell <nathan@codesourcery.com>
+
+ * vec.h (VEC_address): New function.
+
+2004-07-14 Jason Merrill <jason@redhat.com>
+
+ PR middle-end/15885
+ * gimplify.c (gimplify_arg): New fn, split out from...
+ (gimplify_call_expr): Here. Special-case BUILT_IN_VA_START.
+
+2004-07-15 Roman Zippel <zippel@linux-m68k.org>
+
+ * config/m68k/m68k.c (output_move_qimode): Abort on an attempt to
+ generate code which is generated by pushqi1 now
+ * config/m68k/m68k.h (MOVE_BY_PIECES_P): Remove.
+
+2004-07-15 Roman Zippel <zippel@linux-m68k.org>
+
+ * combine.c (simplify_set): match the mode of the constant 0 with
+ the tested operand to match the compare behaviour and the
+ simplify_relational_operation() expectation.
+
+2004-07-15 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md ("bunordered"): Disable for e500.
+ ("bordered"): Same.
+
+2004-07-15 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md ("*cceq_ior_compare"): Allow
+ unconditionally.
+ * config/rs6000/spe.md ("e500_cceq_ior_compare"): Remove.
+
+2004-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_adjust_insn_length): Fix handling of
+ calls in mips16 code.
+
+2004-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: In the mips16 li/neg splitter, use SImode for
+ the destination of the li as well as for the neg.
+
+2004-07-15 Frank Ch. Eigler <fche@redhat.com>
+
+ g++/15861
+ * cgraphunit.c (cgraph_build_static_cdtor): Add priority argument.
+ * cgraph.h: Update declaration.
+ * c-decl.c (build_cdtor): Update call with default priority.
+ * coverage.c (create_coverage): Ditto.
+ * tree-mudflap.c (mf_init_fndecl): New tree.
+ (mudflap_init): Set it.
+ (mudflap_register_call): Arrange to call __mf_init before the first
+ __mf_register call.
+ (mudflap_finish_file): Mark the mudflap static initializer as extra
+ high priority, to beat all C++ static constructors.
+
+2004-07-15 Jeff Law <law@redhat.com>
+
+ * loop.c (check_insn_for_givs): Restore check for code labels that was
+ accidentally deleted by a recent checkin.
+
2004-07-15 Nathan Sidwell <nathan@codesourcery.com>
* vec.h (VEC_T_truncate): Allow truncation of an empty vector.
* print-tree.c (print_node): Fix casts last change.
-2004-07-15 Paul Brook <paul@codesourcery.com>
+2004-07-15 Paul Brook <paul@codesourcery.com>
* dwarf2out.c (dwarf2out_begin_prologue): Rename IA64_UNWIND_INFO
to TARGET_UNWIND_INFO.
Use alias set 0 for memory, do proper mode calculations and adjust
address for memories.
-2004-07-14 Per Bothner <per@bothner.com>
+2004-07-14 Per Bothner <per@bothner.com>
* input.h: If USE_MAPPED_LOCATION, define separate expanded_location
structure with extra column field.
* config/sh/sh.c (sh_gimplify_va_arg_expr): Likewise.
* config/xtensa/xtensa.c (xtensa_gimplify_va_arg_expr): Likewise.
-2004-07-14 Mike Stump <mrs@apple.com>
+2004-07-14 Mike Stump <mrs@apple.com>
* config/darwin.h (WINT_TYPE): Define to be int to match
- system header files.
+ system header files.
2004-07-14 Bob Wilson <bob.wilson@acm.org>
2004-07-13 Anthony Heading <aheading@jpmorgan.com>
- * configure.ac (gcc_cv_as_offsetable_lo10: Fix a typo.
+ * configure.ac (gcc_cv_as_offsetable_lo10): Fix a typo.
* configure: Rebuilt.
2004-07-13 Richard Sandiford <rsandifo@redhat.com>