+2004-09-06 James E Wilson <wilson@specifixinc.com>
+
+ * emit-rtl.c (try_split): Check INSN_P before may_trap_p call.
+
+2004-09-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * final.c (output_in_slot): Delete.
+ (final_scan_insn): Revert 2004-09-03 change.
+ (output_asm_insn): Likewise.
+ * config/sparc/sparc.c (output_return): Likewise.
+ (output_sibcall): Likewise.
+
+2004-09-06 Jan Hubicka <jh@suse.cz>
+
+ * loop.c (loop_dump_aux): Do not print RTL when not available.
+ * tree-ssa-loop-ivopts.c (add_standard_iv_candidates): Do not use
+ frontend specific type nodes.
+ (produce_memory_decl_rtl): Break out from ...
+ (prepare_decl_rtl): ... here. Handle ADDR_EXPR correctly.
+ (get_computation_at): Avoid random tree sharing.
+ (tree_ssa_iv_optimize): Verify tree sharing; dump loops.
+
+2004-09-06 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (rtl.o, bitmap.o): Correct dependencies, remove
+ unnecessary commands.
+
+2004-09-06 Mohan Embar <gnustuff@thisiscool.com>
+
+ * Makefile.in (rtl.o): Remove -DGENERATOR_FILE.
+ (bitmap.o): Likewise.
+
+2004-09-06 Paolo Bonzini <bonzini@gnu.org>
+
+ Unify the management of RTL and tree-level dump files.
+
+ * cfgexpand.c (tree_expand_cfg): Fix incorrect comment.
+ Don't print function name to the dump file, the pass manager
+ would do this for us. Add code from the top of
+ rest_of_compilation, up to the initial RTL dump.
+ * passes.c (rest_of_handle_jump): Call fixup_tail_calls and
+ close the DFI_sibling dump file.
+ (rest_of_compilation): Don't do that here. Remove code up to the
+ initial RTL dump.
+ (init_optimization_passes): Remove.
+ (pass_rest_of_compilation): Change pass name to NULL.
+ * toplev.c (lang_dependent_init): Do not use an empty dump file prefix.
+ Do not call init_optimization_passes.
+ * toplev.h (init_optimization_passes): Remove.
+
+ * graph.c (print_rtl_graph_with_bb, clean_graph_dump_file,
+ finish_graph_dump_file): Remove SUFFIX parameter.
+ * graph.h (print_rtl_graph_with_bb, clean_graph_dump_file,
+ finish_graph_dump_file): Likewise.
+
+ * tree-pass.h (struct tree_opt_pass): Add `letter' field.
+ * cfgexpand.c (pass_expand): Adjust.
+ * gimple-low.c (pass_lower_cf, pass_remove_useless_vars): Adjust.
+ * passes.c (pass_rest_of_compilation): Adjust.
+ * predict.c (pass_profile): Adjust.
+ * tree-alias-common.c (pass_build_pta, pass_del_pta): Adjust.
+ * tree-cfg.c (pass_build_cfg, pass_remove_useless_stmts,
+ pass_split_crit_edges, pass_warn_function_return): Adjust.
+ * tree-complex.c (pass_lower_vector_ssa, pass_pre_expand): Adjust.
+ * tree-dfa.c (pass_referenced_vars): Adjust.
+ * tree-eh.c (pass_lower_eh): Adjust.
+ * tree-if-conv.c (pass_build_ssa): Adjust.
+ * tree-into-ssa.c (pass_build_ssa): Adjust.
+ * tree-mudflap.c (pass_mudflap_1, pass_mudflap_2): Adjust.
+ * tree-nomudflap.c (pass_mudflap_1, pass_mudflap_2): Adjust.
+ * tree-nrv.c (pass_nrv): Adjust.
+ * tree-optimize.c (pass_gimple, pass_all_optimizations,
+ pass_cleanup_cfg_post_optimizing, pass_free_datastructures,
+ pass_init_datastructures): Adjust.
+ * tree-outof-ssa.c (pass_del_ssa): Adjust.
+ * tree-profile.c (pass_tree_profile): Adjust.
+ * tree-sra.c (pass_sra): Adjust.
+ * tree-ssa-alias.c (pass_may_alias): Adjust.
+ * tree-ssa-ccp.c (pass_ccp, pass_fold_builtins): Adjust.
+ * tree-ssa-copyrename.c (pass_rename_ssa_copies): Adjust.
+ * tree-ssa-dce.c (pass_dce, pass_cd_dce): Adjust.
+ * tree-ssa-dom.c (pass_dominator): Adjust.
+ * tree-ssa-dse.c (pass_dse): Adjust.
+ * tree-ssa-forwprop.c (pass_forwprop): Adjust.
+ * tree-ssa-if-conv.c (pass_if_conversion): Adjust.
+ * tree-ssa-loop-ch.c (pass_ch): Adjust.
+ * tree-ssa-loop.c (pass_loop, pass_loop_init, pass_lim,
+ pass_loop_done, pass_complete_unroll, pass_iv_canon,
+ pass_iv_optimize, pass_vectorize): Adjust.
+ * tree-ssa-phiopt.c (pass_phiopt): Adjust.
+ * tree-ssa-pre.c (pass_pre, pass_fre): Adjust.
+ * tree-ssa.c (pass_redundant_phi, pass_early_warn_uninitialized,
+ pass_late_warn_uninnitialized): Adjust.
+ * tree-tailcall.c (pass_tail_recursion, pass_tail_calls): Adjust.
+
+ * Makefile.in (tree-dump.o): Add new dependencies.
+ * cgraph.c (cgraph_remove_node): TDF_all -> TDF_tree_all.
+ * cgraphunit.c (cgraph_preserve_function_body_p, cgraph_optimize):
+ Likewise.
+ * toplev.c (dump_file_name): New.
+ * tree-dump.c (dump_enable_all): Add LETTER parameter.
+ (struct dump_file_info): Add NUM and LETTER fields.
+ (dump_files): Adjust and add RTL dump files.
+ (dump_register): Add NUM and LETTER fields.
+ (get_dump_file_name, dump_initialized_p, enable_rtl_dump_file): New.
+ (dump_begin): Use get_dump_file_name.
+ (dump_switch_p_1): Adjust call to dump_enable_all.
+ * tree-dump.h (dump_register): Adjust prototype.
+ * tree-optimize.c (register_one_dump_file): Take dump file index.
+ Support flags for RTL dumps.
+ (register_dump_files): Fill in NUM field of struct dump_file_info.
+ Track properties both when the gate is executed and when it is not.
+ (execute_todo): Dump RTL. Add PROPERTIES parameter.
+ (execute_one_pass): Pass properties to execute_todo. Handle VCG
+ dumps of RTL.
+ * tree-pass.h (dump_file_name): New.
+ * tree.h (TDF_TREE, TDF_RTL, get_dump_file_name, dump_initialized_p):
+ New.
+
+ * Makefile.in (passes.o): Add new dependencies.
+ * passes.c (struct dump_file_info, enum dump_file_index,
+ dump_file_tbl, init_optimization_passes): Remove.
+ (open_dump_file, close_dump_file): Use tree-dumping infrastructure.
+ (rest_of_handle_new_regalloc, rest_of_handle_old_regalloc): Use
+ dump_enabled_p.
+ (finish_optimization_passes): Update finish_graph_dump_file loop.
+ (enable_rtl_dump_file): Remove.
+ * tree-dump.c (dump_files): Adjust and add RTL dump files.
+ (enable_rtl_dump_file): Add here.
+ * tree.h (enum tree_dump_index): Add RTL dump file indices.
+ * doc/invoke.texi (Debugging options): Document new RTL debugging
+ options. Update.
+
+2004-09-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c, c-decl.c, combine.c, defaults.h, fold-const.c,
+ gimplify.c, gthr-nks.h, hooks.c, lambda-code.c, lambda-mat.c,
+ stor-layout.c, target.h, tree-cfg.c, tree-chrec.c,
+ tree-if-conv.c, tree-inline.c, tree-into-ssa.c,
+ tree-mudflap.c, tree-optimize.c, tree-scalar-evolution.c,
+ tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dce.c,
+ tree-ssa-pre.c, tree-vectorizer.c, tree-vectorizer.h, tree.h,
+ vec.h: Fix comment formatting.
+
+2004-09-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c, cfgexpand.c, cgraphunit.c, defaults.h,
+ et-forest.c, expr.c, gimplify.c, global.c, gthr-lynx.h,
+ hard-reg-set.h, modulo-sched.c, optabs.c, postreload-gcse.c,
+ tree-data-ref.c, tree-flow.h, tree-if-conv.c, tree-inline.c,
+ tree-sra.c, tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c,
+ tree-ssa-loop-niter.c, tree-ssa-operands.c,
+ tree-ssa-operands.h, tree-ssa-propagate.c,
+ tree-ssa-propagate.h, tree-ssa-threadupdate.c, value-prof.c,
+ vec.c, vec.h: Fix comment typos. Follow spelling conventions.
+
+2004-09-05 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-if-conv.c (gate_tree_if_conversion): Enable only if the
+ vectorizer is enabled.
+
+2004-09-05 Andreas Jaeger <aj@suse.de>
+
+ * tree-if-conv.c: Spell check comments and clean up whitespace.
+
+2004-09-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * tree-ssa-loop-ivopts.c: New file.
+ * Makefile.in (tree-ssa-loop-ivopts.c): Add.
+ * cfgloop.h (target_avail_regs, target_res_regs, target_small_cost,
+ target_pres_cost, target_spill_cost): Declare.
+ * cfgloopanal.c (avail_regs, res_regs, small_cost, pres_cost,
+ spill_cost): Renamed to ...
+ (target_avail_regs, target_res_regs, target_small_cost,
+ target_pres_cost, target_spill_cost): ... and exported.
+ (init_set_costs, global_cost_for_size): Work with renamed variables.
+ * common.opt (flag_ivopts): New flag.
+ * expr.c (expand_expr_real_1): Handle SSA_NAME case. Handle
+ REF_ORIGINAL.
+ * gimplify.c (struct gimplify_ctx): Add into_ssa field.
+ (internal_get_tmp_var, gimplify_modify_expr, gimplify_expr): Support
+ generating SSA form.
+ (force_gimple_operand): New function.
+ * timevar.def (TV_TREE_LOOP_IVOPTS): New timevar.
+ * tree-cfg.c (stmt_bsi): New function.
+ * params.def (PARAM_IV_CONSIDER_ALL_CANDIDATES_BOUND,
+ PARAM_IV_MAX_CONSIDERED_USES): New.
+ * tree-flow.h (stmt_bsi, tree_ssa_iv_optimize, split_loop_exit_edge,
+ bsi_insert_on_edge_immediate_loop. standard_iv_increment_position,
+ ip_end_pos, ip_normal_pos, force_gimple_operand): Declare.
+ * tree-gimple.c (is_gimple_formal_tmp_var): Accept ssa names.
+ * tree-nested.c (build_addr): Export.
+ * tree-optimize.c (init_tree_optimization_passes): Add
+ pass_iv_optimize.
+ * tree-pass.h (pass_iv_optimize): Declare.
+ * tree-ssa-loop-im.c (for_each_index): Handle REALPART_EXPR and
+ IMAGPART_EXPR.
+ * tree-ssa-loop-manip.c (create_iv): Force the base to be acceptable
+ as a phi node argument.
+ (split_loop_exit_edge, bsi_insert_on_edge_immediate_loop,
+ ip_end_pos, ip_normal_pos, standard_iv_increment_position): New
+ functions.
+ * tree-ssa-loop-niter.c (zero_p, unsigned_type_for): Export.
+ * tree-ssa-loop.c (tree_ssa_loop_ivopts, gate_tree_ssa_loop_ivopts,
+ pass_iv_optimize): New pass.
+ * tree-ssa-operands.c (get_indirect_ref_operands): Handle REF_ORIGINAL.
+ * tree-ssanames.c (release_ssa_name): Allow calling with var = NULL.
+ * tree.c (build_int_cst_type, cst_and_fits_in_hwi): New functions.
+ * tree.h (REF_ORIGINAL): New macro.
+ (build_int_cst_type, unsigned_type_for, zero_p,
+ cst_and_fits_in_hwi, build_addr): Declare.
+ * doc/invoke.texi (-fivopts): Document.
+ (PARAM_IV_CONSIDER_ALL_CANDIDATES_BOUND,
+ PARAM_IV_MAX_CONSIDERED_USES): Document.
+ * doc/passes.texi: Document induction variable optimizations pass.
+
+2004-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-attrs.def (ATTR_NOTHROW_SENTINEL_1): New.
+ * builtins.def (BUILT_IN_EXECLE): Set ATTR_NOTHROW_SENTINEL_1.
+ * c-common.c (c_common_attribute_table): Accept parameters to
+ sentinel attribute.
+ (check_function_sentinel, handle_sentinel_attribute): Likewise.
+ * doc/extend.texi: Update accordingly.
+
2004-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* builtin-attrs.def (ATTR_SENTINEL, ATTR_SENTINEL_NOTHROW_LIST):
Handle new rounding modes.
* config/i386/i386.h (enum fp_cw_mode): Delete.
- (MODE_NEEDED): Handle new rounding modes.
+ (MODE_NEEDED): Handle new rounding modes.
(EMIT_MODE_SET): Change condition to handle new rounding modes.
* config/i386/i386.md (UNSPEC_FRNDINT_FLOOR, UNSPEC_FRNDINT_CEIL,
* tree-ssa-operands.c (get_expr_operands): Handle COND_EXPR.
* tree-if-conv.c: New file.
* doc/passes.texi: Document tree if-conversion pass.
- * doc/tree-ssa.texi: Same.
+ * doc/tree-ssa.texi: Same.
2004-09-03 H.J. Lu <hongjiu.lu@intel.com>
2004-09-03 Richard Henderson <rth@redhat.com>
- PR middle-end/9997
- * cfgexpand.c (LOCAL_ALIGNMENT): Provide default.
- (STACK_ALIGNMENT_NEEDED, FRAME_GROWS_DOWNWARD): Likewise.
- (struct stack_var, EOC, stack_vars, stack_vars_alloc, stack_vars_num,
- stack_vars_sorted, stack_vars_conflict, stack_vars_conflict_alloc,
- frame_phase, get_decl_align_unit, add_stack_var, triangular_index,
- resize_stack_vars_conflict, add_stack_var_conflict,
- stack_var_conflict_p, add_alias_set_conflicts, stack_var_size_cmp,
- union_stack_vars, partition_stack_vars, dump_stack_var_partition,
- expand_one_stack_var_at, expand_stack_vars, expand_one_stack_var,
+ PR middle-end/9997
+ * cfgexpand.c (LOCAL_ALIGNMENT): Provide default.
+ (STACK_ALIGNMENT_NEEDED, FRAME_GROWS_DOWNWARD): Likewise.
+ (struct stack_var, EOC, stack_vars, stack_vars_alloc, stack_vars_num,
+ stack_vars_sorted, stack_vars_conflict, stack_vars_conflict_alloc,
+ frame_phase, get_decl_align_unit, add_stack_var, triangular_index,
+ resize_stack_vars_conflict, add_stack_var_conflict,
+ stack_var_conflict_p, add_alias_set_conflicts, stack_var_size_cmp,
+ union_stack_vars, partition_stack_vars, dump_stack_var_partition,
+ expand_one_stack_var_at, expand_stack_vars, expand_one_stack_var,
expand_one_static_var, expand_one_hard_reg_var,
expand_one_register_var, expand_one_error_var, defer_stack_allocation,
expand_one_var, expand_used_vars_for_block, clear_tree_used): New.
- (expand_used_vars): Rewrite.
+ (expand_used_vars): Rewrite.
* Makefile.in (cfgexpand.o): Update dependencies.
2004-09-04 Jan Hubicka <jh@suse.cz>
2004-09-03 Devang Patel <dpatel@apple.com>
* dwarf2out.c (gen_field_die). Equate decl number to die.
-
+
2004-09-03 Vladimir Makarov <vmakarov@redhat.com>
PR target/15832
* tsystem.h: Declare memcpy and memset when inhibit_libc.
2004-09-02 Roman Zippel <zippel@linux-m68k.org>
-
+
* combine.c (try_combine): Delay modifying of insns which cannot
be easily undone.
TARGET_BPABI_CPP_BUILTINS.
2004-09-02 Roman Zippel <zippel@linux-m68k.org>
-
+
* combine.c (distribute_notes): Don't add REG_LABEL to jump insn.
2004-09-02 Eric Christopher <echristo@redhat.com>
2004-08-30 Nathan Sidwell <nathan@codesourcery.com>
+ * alias.c (mems_in_disjoint_alias_sets_p, record_alias_subset,
+ record_set, rtx_equal_for_memref_p, init_alias_analysis): Use
+ gcc_assert and gcc_unreachable instead of abort.
+ * alloc-pool.c (abort, fancy_abort): Remove.
+ (create_alloc_pool, free_alloc_pool, pool_alloc, pool_free): Use
+ gcc_assert or gcc_unreachable.
+ * attribs.c (init_attributes, decl_attributes): Likewise.
+ * bb-reorder.c (FREE, find_traces_1_round, copy_bb,
+ mark_bb_for_unlikely_executed_section,
+ add_labels_and_missing_jumps, fix_crossing_conditional_branches,
+ fix_crossing_unconditional_branches): Likewise.
+ * bitmap.c (bitmap_first_set_bit, bitmap_last_set_bit,
+ bitmap_operation): Likewise.
+ * bt-load.c (insn_sets_btr_p, augment_live_range,
+ move_btr_def): Likewise.
+ * builtins.c (c_readstr, expand_builtin_longjmp, apply_args_size,
+ apply_result_size, expand_builtin_apply, expand_builtin_mathfn,
+ expand_builtin_mathfn_2, expand_builtin_mathfn_3,
+ builtin_memcpy_read_str, expand_movstr, expand_builtin_stpcpy,
+ expand_builtin_memcmp, expand_builtin_args_info,
+ std_gimplify_va_arg_expr, expand_builtin_unop,
+ expand_builtin_fputs, expand_builtin_profile_func,
+ expand_builtin_fork_or_exec, fold_builtin_bitop,
+ fold_builtin_classify, fold_builtin_fputs): Likewise.
+
+2004-08-30 Nathan Sidwell <nathan@codesourcery.com>
+
* gcov-io.c (GCOV_CHECK): Use gcc_assert when available.
* gcov.c (abort): Remove undef.
(mover2side, moverside, movemside, movei, op3, andu): Replace
live define_peephole:s with define_peephole2 near-equivalents.
Delete the rest.
- ("*mov_sidesisf_biap"): Rename from "*mov_sidesi_biap". Match all
+ ("*mov_sidesisf_biap"): Rename from "*mov_sidesi_biap". Match all
word-size modes.
("*mov_sidesisf", "*mov_sidesisf_biap_mem", "*mov_sidesisf_mem"):
Similar for "*mov_sidesi", "*mov_sidesi_biap_mem" and