+2006-02-06 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-vrp.c (execute_vrp): Do not pass dump argument to.
+ loop_optimizer_init and loop_optimizer_finalize
+ * tree-ssa-sink.c (execute_sink_code): Ditto.
+ * tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
+ * tree-ssa-loop.c (tree_loop_optimizer_init, tree_ssa_loop_init,
+ tree_ssa_loop_done): Ditto.
+ * tree-ssa-pre.c (init_pre, fini_pre): Ditto.
+ * sched-ebb.c: Include output.h.
+ (schedule_ebbs): Do not use dump argument.
+ * value-prof.h (struct profile_hooks): Remove profile_dump_file.
+ * loop.c (loop_dump_stream): Removed.
+ (loop_optimize, rest_of_handle_loop_optimize): Do not use dump
+ argument.
+ (scan_loop, move_movables, find_and_verify_loops, mark_loop_jump,
+ emit_prefetch_instructions, loop_bivs_find, loop_bivs_check,
+ final_biv_value, loop_biv_eliminable_p, loop_givs_rescan,
+ loop_iterations, strength_reduce, record_biv, record_giv,
+ final_giv_value, check_final_value, check_ext_dependent_givs,
+ combine_givs, check_dbra_loop, maybe_eliminate_biv, load_mems,
+ try_copy_prop, loop_delete_insns, try_swap_copy_prop): Use
+ dump_file instead of loop_dump_stream.
+ * ddg.c (print_ddg_edge, print_ddg, vcg_print_ddg): Do not call
+ argument dump_file.
+ * reorg.c (dbr_schedule, rest_of_handle_delay_slots): Do not use
+ dump argument.
+ * flow.c (life_analysis, rest_of_handle_life): Ditto.
+ * haifa-sched.c: Include output.h
+ (schedule_insns, sched_init): Do not use dump argument.
+ * mode-switching.c (optimize_mode_switching): Ditto.
+ * modulo-sched.c (stats_file): Removed.
+ (print_node_sched_params): Do not call argument dump_file.
+ (sms_schedule_by_order, loop_canon_p, sms_schedule,
+ rest_of_handle_sms): Do not use dump argument. Use dump_file instead
+ of stats_file.
+ * cse.c (cse_main, rest_of_handle_cse, rest_of_handle_cse2): Do not
+ use dump argument.
+ * loop-init.c (loop_optimizer_init, loop_optimizer_finalize,
+ rtl_loop_init, rtl_loop_done): Ditto.
+ * global.c (global_alloc, rest_of_handle_global_alloc): Ditto.
+ * predict.c (combine_predictions_for_bb, tree_estimate_probability):
+ Ditto.
+ * recog.c (peephole2_optimize, rest_of_handle_peephole2): Ditto.
+ * lcm.c (pre_edge_lcm, pre_edge_rev_lcm): Ditto.
+ * regmove.c (fixup_match_1, fixup_match_2, regmove_optimize,
+ rest_of_handle_regmove, rest_of_handle_stack_adjustments): Ditto.
+ * emit-rtl.c (renumber_insns): Ditto.
+ * cfgexpand.c (add_reg_br_prob_note, expand_gimple_cond_expr,
+ expand_gimple_basic_block, tree_expand_cfg): Ditto.
+ * regclass.c (regclass): Ditto.
+ * tree-outof-ssa.c (analyze_edges_for_bb, perform_edge_inserts,
+ remove_ssa_form, rewrite_out_of_ssa): Ditto.
+ * reg-stack.c (compensate_edge, compensate_edges, convert_regs_1,
+ convert_regs_2, convert_regs, reg_to_stack, rest_of_handle_stack_regs):
+ Ditto.
+ * sched-rgn.c (schedule_insns, rest_of_handle_sched): Ditto.
+ * local-alloc.c (rest_of_handle_local_alloc): Do not pass dump_file
+ to regclass.
+ * gcse.c (gcse_file, debug_stderr): Removed.
+ (gcse_main, bypass_jumps, rest_of_handle_jump_bypass,
+ rest_of_handle_gcse): Do not use dump argument.
+ (cprop_jump, cprop_insn, do_local_cprop, cprop, find_implicit_sets,
+ one_cprop_pass, bypass_block, compute_pre_data, insert_insn_end_bb,
+ pre_edge_insert, pre_insert_copy_insn, pre_delete, one_pre_gcse_pass,
+ compute_code_hoist_vbeinout, compute_code_hoist_data,
+ one_code_hoisting_pass, trim_ld_motion_mems, update_ld_motion_stores,
+ compute_store_table, build_store_vectors, insert_insn_start_bb,
+ insert_store, remove_reachable_equiv_notes, replace_store_insn,
+ store_motion): Use dump_file instead of gcse_file.
+ * ipa-type-escape.c (type_escape_execute): Remove debugging comments.
+ * profile.c (profile_dump_file): Removed.
+ (branch_prob): Use dump_file instead of profile_dump_file.
+ * ipa.c (cgraph_remove_unreachable_nodes): Do not call argument
+ dump_file.
+ * tree-ssa-copy.c (dump_copy_of): Ditto.
+ * rtl-factoring.c (rtl_seqabstr, rest_of_rtl_seqabstr): Do not pass
+ dump file to life_analysis.
+ * bt-load.c (branch_target_load_optimize): Ditto.
+ * cfgcleanup.c (rest_of_handle_jump2): Do not pass dump_file to
+ renumber_insns.
+ * rtl.h (cse_main, renumber_insns, schedule_insns, schedule_ebbs,
+ regclass, dbr_schedule): Declaration changed.
+ * sched-int.h (sched_init): Declaration changed.
+ * tree-profile.c (tree_profile_dump_file): Removed.
+ (tree_profile_hooks): Removed profile_dump_file hook.
+ * rtl-profile (rtl_profile_dump_file): Removed.
+ (rtl_profile_hooks): emoved profile_dump_file hook.
+ * cfgloop.h (loop_optimizer_init, loop_optimizer_finalize): Declaration
+ changed.
+ * c-gimplify.c (c_genericize): Do not call local variable dump_file.
+ * tree-cfg.c (build_tree_cfg): Ditto.
+ * Makefile.in (haifa-sched.o, sched-ebb.o): Add output.h dependency.
+ * basic-block.h (life_analysis, pre_edge_lcm, pre_edge_rev_lcm):
+ Declaration changed.
+ * config/sh/sh.c (sh_output_mi_thunk): Do not pass dump_file to
+ life_analysis and schedule_insns.
+ * config/m68hc11/m68hc11.c (m68hc11_reorg): Do not pass dump_file to
+ life_analysis.
+ * config/mt/mt.c (mt_machine_reorg): Do not pass dump_file to
+ dbr_schedule.
+ * config/mips/mips.c (mips_reorg): Ditto.
+ * config/ia64/ia64.c (ia64_reorg): Do not pass dump_file to
+ schedule_ebbs.
+
+2006-02-06 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/s390/s390.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
+ (s390_mangle_fundamental_type): New.
+ * config/s390/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
+ Define.
+
+ * config/alpha/alpha.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
+ (alpha_mangle_fundamental_type): New.
+ * config/alpha/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
+ Define.
+
+ * config/sparc/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
+ Define.
+ * config/sparc/linux64.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
+ Define.
+ * config/sparc/sparc.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
+ (sparc_mangle_fundamental_type): New.
+
+2006-02-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (s390-*-linux*): Add s390/t-linux to tmake_file.
+ (s390x-*-linux*): Likewise.
+ * config/s390/t-linux64 (SHLIB_MAPFILES): Removed.
+ * config/s390/t-linux: New file.
+
+2006-02-02 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/i386/sync.md (sync_add<mode>, sync_sub<mode>, sync_ior<mode>,
+ sync_and<mode>, sync_xor<mode>): Operand 0 is in-out.
+
+2006-02-06 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c (bb_value_sets_t): Add antic_safe_loads.
+ (ANTIC_SAFE_LOADS): New macro.
+ (find_or_generate_expression): Add prototype.
+ (set_contains_value): Allow null set for sake of not always having
+ to allocate ANTIC_SAFE_LOADS.
+ (phi_translate): Move placement of AGGREGATE_TYPE_P check.
+ Allow COMPONENT_REF too.
+ (valid_in_set): Allow COMPONENT_REF.
+ Check ANTIC_SAFE_LOADS too.
+ (compute_antic_aux): Print out ANTIC_SAFE_LOADS.
+ (compute_rvuse_and_antic_safe): Add ANTIC_SAFE computation, and
+ rename.
+ (can_PRE_operation): Add COMPONENT_REF.
+ (create_component_ref_by_pieces): New function.
+ (create_expression_by_pieces): Use create_component_ref_by_pieces.
+ (insert_aux): Move AGGREGATE_TYPE_P check here.
+ (compute_avail): Set bb local stmt uids.
+ (pass_pre): Use TODO_update_ssa_only_virtuals.
+
+2006-02-06 Ben Elliston <bje@au.ibm.com>
+
+ * configure.ac: Unconditionally disable decimal float by default.
+ * configure: Regenerate.
+
+2006-02-06 Ben Elliston <bje@au.ibm.com>
+
+ * read-rtl.c (read_name): Terminate reading on EOF.
+
+2006-02-06 Ben Elliston <bje@au.ibm.com>
+
+ * dfp.c (decimal_real_arithmetic): Change second argument type
+ from int to enum tree_code. Do not always return true, but now
+ return result of any call to decimal_do helper functions.
+ * dfp.h (decimal_real_arithmetic): Update prototype.
+
+2006-02-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2-bi.h (SPARC_DEFAULT_CMODEL): Set to CM_MEDMID.
+
+2006-02-05 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR tree-opt/25251
+ * tree-cfg.c (cleanup_dead_labels): Also don't remove
+ forced labels.
+
+2006-02-04 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-vrp.c (cfg_loops): Removed.
+ (adjust_range_with_scev, vrp_visit_assignment, execute_vrp):
+ Use current_loops instead of cfg_loops. Pass flags to
+ loop_optimizer_init.
+ * cfgloopmanip.c (fix_loop_structure): Update only available
+ information.
+ * tree-ssa-loop-ch.c (copy_loop_headers): Pass flags to
+ loop_optimizer_init.
+ * modulo-sched.c (build_loops_structure): Removed.
+ (sms_schedule): Use loop_optimizer_init.
+ * loop-init.c (loop_optimizer_init): Use flags to determine
+ which properties of loops to prepare.
+ (rtl_loop_init): Pass flags to loop_optimizer_init.
+ * tree-ssa-sink.c (execute_sink_code): Ditto.
+ * tree-ssa-loop.c (tree_loop_optimizer_init): Ditto.
+ * tree-ssa-pre.c (init_pre): Ditto.
+ * cfgloop.h (LOOPS_NORMAL): New.
+ (loop_optimizer_init): Declaration changed.
+
+2006-02-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa/x-ada-hpux10, pa/t-pa-hpux10, pa/t-pa-hpux11: New files.
+ * config.gcc (hppa[12]*-*-hpux10*): Use pa/t-pa-hpux10 instead of
+ pa/t-pa.
+ * config.gcc (hppa[12]*-*-hpux11*): Use pa/t-pa-hpux11 instead of
+ pa/t-pa.
+ * config.host (hppa*-*-hpux10*): Use pa/x-ada-hpux10 instead of
+ pa/x-ada.
+ * pa/t-pa-hpux: Add lib2funcs.asm and quadlib.c rules.
+ * pa/t-pa64: Delete quadlib.c rule.
+ * pa/x-ada: Revert last change.
+ * pa/t-pa: Revert last change. Delete quadlib.c rule.
+
+2006-02-04 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR rtl-optimization/26087
+ * rtlanal.c (canonicalize_condition): Do not cross basic block
+ boundaries.
+
+2006-02-04 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/24444
+ * config/ia64/ia64.c: Include debug.h.
+ (MAX_ARTIFICIAL_LABEL_BYTES): New.
+ (ia64_label_after_insn, ia64_dwarf2out_def_steady_cfa): New.
+ (IA64_CHANGE_CFA_IN_EPILOGUE): Define to 0.
+ (process_epilogue, process_set, process_for_unwind_directive):
+ Output unwind info only if requested. Add CFA info if requested.
+ Add new arguments as needed. Adjust callers.
+ * config/ia64/ia64.h (ARG_POINTER_CFA_OFFSET): Override
+ incorrect default.
+ (DWARF2_FRAME_INFO): Define to zero.
+ * config/ia64/unwind-ia64.c: Remove code that compensated for
+ the CFA offset error fixed above.
+ * config/ia64/t-ia64 (ia64.o): Depend on debug.h.
+ * dwarf2out.c (DWARF2_FRAME_INFO): Define default.
+ (dwarf2out_do_frame): Require nonzero DWARF2_UNWIND_INFO for
+ -funwind-tables and -fexceptions to enable frame info.
+ (dwarf2out_frame_init): Define initial CFA even if
+ DWARF2_UNWIND_INFO is disabled. Call initial_return_save if
+ DWARF2_UNWIND_INFO is nonzero, not just defined.
+ (dwarf2out_frame_finish): Output non-EH call frame info only
+ if DWARF2_FRAME_INFO is nonzero.
+ (convert_cfa_to_loc_list,
+ compute_frame_pointer_to_cfa_displacement): Define even if
+ unwind info is not supported.
+ (gen_subprogram_die): Use the above unconditionally. Remove
+ legacy alternate code.
+ * toplev.c (compile_file): Compile in call to
+ dwarf2out_frame_finish if DWARF2_DEBUGGING_INFO is defined.
+ (lang_dependent_init): Ditto for dwarf2out_frame_init.
+
+2006-02-04 David Edelsohn <edelsohn@gnu.org>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_mangle_fundamental_type): Mangle
+ IBM extended float format long double as "g" on powerpc*-linux.
+
+2006-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/25926
+ * pa/x-ada (X_ADA_CFLAGS): Define _X_HPUX10 on HP-UX 10.
+ * pa/t-pa (TARGET_LIBGCC2_CFLAGS): Define _T_HPUX10 on HP-UX 10.
+
+2006-02-03 Jason Merrill <jason@redhat.com>
+
+ PR c++/25979
+ * gimplify.c (gimplify_modify_expr_rhs): Disable *& optimization for now.
+
+ PR middle-end/25977
+ * gimplify.c (gimplify_modify_expr_rhs): It's not always safe to do RVO
+ on the return slot if it's an NRV.
+
+2006-02-03 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-loop-ivopts.c (enum use_type): Remove USE_OUTER.
+ (dump_use, add_derived_ivs_candidates, determine_use_iv_cost,
+ rewrite_use): Do not handle USE_OUTER.
+ (find_interesting_uses_outer_or_nonlin, find_interesting_uses_outer,
+ add_iv_outer_candidates, may_replace_final_value,
+ determine_use_iv_cost_outer, rewrite_use_outer): Removed.
+ (find_interesting_uses_op): Functionality of
+ find_interesting_uses_outer_or_nonlin moved here.
+ (find_interesting_uses_outside): Use find_interesting_uses_op.
+
+2006-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/25960
+ * config/rs6000/darwin-ldouble.c (__gcc_qadd): Preserve -0.0 result.
+
+2006-02-03 Andreas Krebbel <krebbel1@de.ibm.com>
+ Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/25864
+ * config/s390/2084.md ("x_fsimptf", "x_fmultf", "x_fdivtf",
+ "x_floadtf", "x_ftrunctf", "x_ftruncdf"): New insn reservations.
+ * config/s390/fixdfdi.h (__fixunstfdi, __fixtfdi): New functions.
+ * config/s390/s390.c (struct processor_costs): Add mxbr, sqxbr, dxbr
+ and dxr fields.
+ (z900_cost, z990_cost, z9_109_cost): Values for the new fields added.
+ (s390_rtx_costs): Use the new fields to calculate rtx costs.
+ (s390_secondary_input_reload_class, s390_secondary_output_reload_class):
+ Define secondary reloads for TFmode moves.
+ (constant_modes): Add TFmode.
+ (NR_C_MODES): Set to 8.
+ * config/s390/s390.h (TARGET_CPU_CPP_BUILTINS): Add __LONG_DOUBLE_128__
+ builtin define.
+ (LONG_DOUBLE_TYPE_SIZE): Set to 128 or 64.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE, WIDEST_HARDWARE_FP_SIZE): Define.
+ (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, CLASS_MAX_NREGS,
+ CANNOT_CHANGE_MODE_CLASS): Consider TFmode.
+ * config/s390/s390.md ("type" attribute): Add fsimptf, floadtf, fmultf,
+ fdivtf, fsqrttf, ftrunctf, ftruncdf as possible values.
+ (FPR mode macro): Add TFmode.
+ (DSF mode macro): New.
+ (<de>, <dee> mode attributes): Removed.
+ (<xde>, <xdee>, <RRe>, <RXe>, <Rf> mode attributes): New.
+ ("*cmp<mode>_ccs_0", "*cmp<mode>_ccs_0_ibm", "*cmp<mode>_ccs",
+ "*cmp<mode>_ccs_ibm", "fix_trunc<FPR:mode><GPR:mode>2_ieee",
+ "floatdi<mode>2", "floatsi<mode>2_ieee", "*add<mode>3",
+ "*add<mode>3_cc", "*add<mode>3_cconly", "*add<mode>3_ibm",
+ "*sub<mode>3", "*sub<mode>3_cc", "*sub<mode>3_cconly",
+ "*sub<mode>3_ibm", "*mul<mode>3_ibm", "*fmadd<mode>", "*fmsub<mode>",
+ "*div<mode>3", "*div<mode>3_ibm", "*neg<mode>2_cc",
+ "*neg<mode>2_cconly", "*neg<mode>2", "*neg<mode>2_ibm",
+ "*abs<mode>2_cc", "*abs<mode>2_cconly", "*abs<mode>2",
+ "*abs<mode>2_ibm", "*negabs<mode>2_cc", "*negabs<mode>2_cconly",
+ "*negabs<mode>2", "sqrt<mode>2"):
+ Changed <de> to <xde>. R constraint replaced by <Rf>.
+ ("*mul<mode>3"): Changed <dee> to <xdee>. R constraint replaced by
+ <Rf>.
+ ("fix_trunc<FPR:mode>di2"): 'FPR:' removed.
+ ("*fmadd<mode>", "*fmsub<mode>"): FPR mode replaced by DSF.
+ ("*movtf_64", "*movtf_31"): New insn definitions followed by 5
+ splitters.
+ ("movtf", "reload_outtf", "reload_intf", "trunctfdf2", "trunctfsf2",
+ "extenddftf2", "extendsftf2"): New expanders.
+ ("*trunctfdf2_ieee", "*trunctfdf2_ibm", "*trunctfsf2_ieee",
+ "*trunctfsf2_ibm", "*extenddftf2_ieee", "*extenddftf2_ibm",
+ "*extendsftf2_ieee", "*extendsftf2_ibm"): New insn patterns.
+ * config/s390/s390.opt (mlong-double-128, mlong-double-64):
+ New options.
+ * config/s390/t-crtstuff (TARGET_LIBGCC2_CFLAGS): Macro defined.
+ * config/s390/libgcc-glibc.ver (__divtc3, __multc3, __powitf2,
+ __fixtfti, __fixunstfti, __floattitf, __fixtfdi, __fixunstfdi,
+ __floatditf): Add a GCC_4.1.0 symbol version tag.
+ * doc/invoke.texi (-mlong-double-128, -mlong-double-64): Document
+ the new options.
+
+2006-02-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/25377
+ * config/i386/i386.c (ix86_function_ok_for_sibcall):
+ Use targetm.binds_local_p instead of TREE_PUBLIC.
+
+2006-02-02 Roger Sayle <roger@eyesopen.com>
+
+ * tree.h (TYPE_STRING_FLAG): Document that this field may be used
+ on INTEGER_TYPEs to indicate that it denotes a character type.
+ * tree.c (build_common_tree_nodes): Set TYPE_STRING_FLAG on
+ signed_char_type_node, unsigned_char_type_node and char_type_node.
+ * dwarf2out.c (base_type_die): Treat CHAR_TYPE identically to
+ INTEGER_TYPE. Use TYPE_STRING_FLAG to decide whether to emit
+ a DW_ATE_[un]signed_char instead of a DW_ATE_[un]signed.
+
+2006-02-02 Zdenek Dvorak <dvorakz@suse.cz>
+ Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-tailcall.c (arg_needs_copy_p): New function.
+ (eliminate_tail_call): Use arg_needs_copy_p.
+ (tree_optimize_tail_calls_1): Ditto. Also call add_virtual_phis.
+ (add_virtual_phis): New function.
+
+2006-02-02 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.c (sparc_output_scratch_registers): Use
+ #ignore instead of #scratch for %g7 .register directive.
+
+2006-02-02 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * config/sparc/freebsd.h (ENDFILE_SPEC): Add space to separate
+ object files.
+
+2006-02-02 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * flow.c (calculate_global_regs_live): Assert that there aren't any
+ EDGE_FAKE edges.
+
+2006-02-02 Paolo Bonzini <bonzini@gnu.org>
+
+ * tree-flow-inline.h (bsi_after_labels): Rewrite, return
+ what its name says.
+ * lambda-code.c (perfect_nestify): Use bsi_insert_before on
+ bsi_after_labels iterator.
+ * tree-if-conv.c (find_phi_replacement_condition,
+ replace_phi_with_cond_modify_expr): Likewise.
+ * tree-scalar-evolution.c (scev_const_prop): Likewise.
+ * tree-ssa-loop-ivopts.c (compute_phi_arg_on_exit): Likewise.
+
+2006-02-02 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-inline.c (copy_tree_r): Also copy OMP_CLAUSE nodes.
+
+2006-02-02 Diego Novillo <dnovillo@redhat.com>
+
+ PR 25990
+ * tree-cfg.c (move_block_to_fn): Clear out the basic block
+ array after growing it.
+
+2006-02-01 Steve Ellcey <sje@cup.hp.com>
+
+ PR middle-end/24901
+ * fold-const.c (fold_checksum_tree): Change type of buf.
+
+2006-02-01 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * reload.c (push_secondary_reload): Initialize t_icode.
+
+2006-02-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): For
+ -msoft-float -mlong-double-128 only issue a warning, but don't
+ swich to DFmode long double.
+
+2006-02-01 Hans-Peter Nilsson <hp@axis.com>
+
+ * cse.c (fold_rtx) <case RTX_COMM_COMPARE, RTX_COMPARE>: When arg1
+ has a constant equivalent, iterate over equivalents for arg0,
+ calling simplify_relational_operation and if there's a result
+ cheaper than X, apply fold_rtx and return the result.
+
+2006-02-01 Jan Hubicka <jh@suse.cz>
+
+ * opts.c (no_unit_at_a_time_default): New global variable.
+ (decode_options): Use it.
+ * opts.h (no_unit_at_a_time_default): Declare.
+
+2006-02-01 Paul Brook <paul@codesourcery.com>
+
+ * function.c (assign_parm_setup_reg): Use function argument promotion
+ rules.
+ * expr.c (expand_expr_real_1): Use function argument promotion rules
+ for PARM_DECLs.
+
+2006-02-01 Steve Ellcey <sje@cup.hp.com>
+
+ * gcc.c (process_command): Change j to 'unsigned int'.
+
+2006-01-31 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/26001
+ * expr.c (expand_expr_real_1) <case ARRAY_REF>:
+ Use the corrected index for the character
+ out of the string constant.
+
+2006-01-31 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * mode-switching.c (optimize_mode_switching): Fix size
+ allocated for bb_info[n_entities].
+
+2006-01-31 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * gcc.c (main): Correct type that is allocated for
+ explicit_link_files.
+
+2006-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ * config/s390/s390.c (init_alignment_context): Set
+ ALIAS_SET_MEMORY_BARRIER on the MEM.
+ * config/sparc/sparc.c (sparc_expand_compare_and_swap_12): Likewise.
+
+2006-01-31 Uttam Pawar <uttamp@us.ibm.com>
+
+ PR middle-end/25933
+ * loop-unroll.c (unroll_loop_runtime_iterations): Free
+ dom_bbs pointer.
+ * tree-ssa-live.c (type_var_init): Allocate bitmap after
+ call to tpa_init.
+
+2006-01-31 Marcin Dalecki <martin@dalecki.de>
+
+ * tree-vrp.c: Use XNEW/XCNEW allocation wrappers.
+ * regrename.c: Ditto.
+ * tree-ssa-loop-im.c: Ditto.
+ * tree-dump.c: Ditto.
+ * tree-complex.c: Ditto.
+ * genrecog.c: Ditto.
+ * tree-ssa-threadupdate.c: Ditto.
+ * tracer.c: Ditto.
+ * java/class.c: Ditto.
+ * java/jcf-parse.c: Ditto.
+ * java/resource.c: Ditto.
+ * java/except.c: Ditto.
+ * java/jvspec.c: Ditto.
+ * java/jcf-write.c: Ditto.
+ * java/jcf-path.c: Ditto.
+ * java/gjavah.c: Ditto.
+ * java/zextract.c: Ditto.
+ * java/jcf-io.c: Ditto.
+ * java/jcf.h: Ditto.
+ * java/buffer.c: Ditto.
+ * java/lang.c: Ditto.
+ * java/parse-scan.y: Ditto.
+ * java/lex.c: Ditto.
+ * java/lex.h: Ditto.
+ * cfgloopmanip.c: Ditto.
+ * postreload-gcse.c: Ditto.
+ * tree-ssa-loop-manip.c: Ditto.
+ * postreload.c: Ditto.
+ * tree-ssa-loop-ch.c: Ditto.
+ * loop.c: Ditto.
+ * ipa-cp.c: Ditto.
+ * cppspec.c: Ditto.
+ * diagnostic.c: Ditto.
+ * final.c: Ditto.
+ * genoutput.c: Ditto.
+ * gcc.c: Ditto.
+ * cfghooks.c: Ditto.
+ * cfgloopanal.c: Ditto.
+ * objc/objc-act.c: Ditto.
+ * gcov.c: Ditto.
+ * genextract.c: Ditto.
+ * genautomata.c: Ditto.
+ * pretty-print.c: Ditto.
+ * genemit.c: Ditto.
+ * cgraphunit.c: Ditto.
+ * flow.c: Ditto.
+ * df-scan.c: Ditto.
+ * haifa-sched.c: Ditto.
+ * dominance.c: Ditto.
+ * dbxout.c: Ditto.
+ * tree-ssa-loop-ivopts.c: Ditto.
+ * df-core.c: Ditto.
+ * mode-switching.c: Ditto.
+ * modulo-sched.c: Ditto.
+ * graph.c: Ditto.
+ * ipa-pure-const.c: Ditto.
+ * cse.c: Ditto.
+ * fix-header.c: Ditto.
+ * web.c: Ditto.
+ * tree-stdarg.c: Ditto.
+ * ipa-utils.c: Ditto.
+ * loop-init.c: Ditto.
+ * ipa-inline.c: Ditto.
+ * cfganal.c: Ditto.
+ * global.c: Ditto.
+ * alloc-pool.c: Ditto.
+ * dwarf2out.c: Ditto.
+ * opts.c: Ditto.
+ * genattrtab.c: Ditto.
+ * tree-ssa-loop-ivcanon.c: Ditto.
+ * predict.c: Ditto.
+ * timevar.c: Ditto.
+ * lcm.c: Ditto.
+ * fortran/gfortranspec.c: Ditto.
+ * regmove.c: Ditto.
+ * local-alloc.c: Ditto.
+ * langhooks.c: Ditto.
+ * function.c: Ditto.
+ * tree-vectorizer.c: Ditto.
+ * gcse.c: Ditto.
+ * ipa-type-escape.c: Ditto.
+ * alias.c: Ditto.
+ * tree-if-conv.c: Ditto.
+ * profile.c: Ditto.
+ * ipa.c: Ditto.
+ * tree-data-ref.c: Ditto.
+ * loop-unroll.c: Ditto.
+ * treelang/treetree.c: Ditto.
+ * calls.c: Ditto.
+ * bt-load.c: Ditto.
+ * ggc-common.c: Ditto.
+ * except.c: Ditto.
+ * coverage.c: Ditto.
+ * cselib.c: Ditto.
+ * tree-cfgcleanup.c: Ditto.
+ * tree-ssa-pre.c: Ditto.
+ * cfgcleanup.c: Ditto.
+ * loop-invariant.c: Ditto.
+ * loop-iv.c: Ditto.
+ * ipa-prop.c: Ditto.
+ * print-tree.c: Ditto.
+ * conflict.c: Ditto.
+ * ggc-page.c: Ditto.
+ * sched-deps.c: Ditto.
+ * regclass.c: Ditto.
+ * tree-object-size.c: Ditto.
+ * combine.c: Ditto.
+ * bb-reorder.c: Ditto.
+ * resource.c: Ditto.
+ * var-tracking.c: Ditto.
+ * cfgloop.c: Ditto.
+ * df-problems.c: Ditto.
+ * reg-stack.c: Ditto.
+ * tlink.c: Ditto.
+ * gccspec.c: Ditto.
+ * sched-rgn.c: Ditto.
+ * tree-ssa-structalias.c: Ditto.
+ * tree-ssa-reassoc.c: Ditto.
+ * config/darwin-c.c: Ditto.
+ * config/darwin.c: Ditto.
+ * config/arm/arm.c: Ditto.
+ * cfgrtl.c: Ditto.
+ * collect2.c: Ditto.
+ * reload1.c: Ditto.
+
+2006-01-31 Nicolas Pitre <nico@cam.org>
+
+ * arm.md (smaxsi3): Make aware of smax_m1.
+ (smax_m1): New.
+
+2006-01-31 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc/config/m68k/lb1sf68.asm: Use moveq to load small constants.
+
+2006-01-31 Richard Guenther <rguenther@suse.de>
+
+ * doc/invoke.texi (-msselibm): Document.
+ * target.h (expand_library_builtin): New target hook.
+ * builtins.c (expand_builtin): Use expand_library_builtin.
+ (default_expand_library_builtin): New function.
+ * gcc.c (LINK_GCC_MATH_SPEC): Define.
+ (LINK_COMMAND_SPEC): Handle %(link_gcc_math).
+ (link_gcc_math_spec): Declare.
+ (static_specs): Add link_gcc_math_spec.
+ * expr.h (default_expand_library_builtin): Declare.
+ * target-def.h (TARGET_EXPAND_LIBRARY_BUILTIN): Define.
+ (TARGET_INITIALIZER): Add TARGET_EXPAND_LIBRARY_BUILTIN.
+ * config/i386/i386.h: Provide LINK_GCC_MATH_SPEC.
+ * config/i386/i386.opt (msselibm): New target option.
+ * config/i386/i386.c (ix86_builtin_function_variants): New array.
+ (ix86_init_sse_abi_builtins): New function.
+ (ix86_expand_library_builtin): Likewise.
+ (TARGET_EXPAND_LIBRARY_BUILTIN): Define.
+ (override_options): Handle error conditions wrt -msselibm.
+ (ix86_builtins): Add function codes for SSE2 ABI builtins.
+ (ix86_init_builtins): Call ix86_init_sse_abi_builtins.
+ * doc/extend.texi (__builtin_sse2_*): Document new target specific
+ builtins.
+
+2006-01-31 Richard Guenther <rguenther@suse.de>
+ Paolo Bonzini <bonzini@gnu.org>
+
+ * doc/install.texi (--disable-libgcc-math): Document.
+
+2006-01-30 Marcin Dalecki <martin@dalecki.de>
+
+ * expr.h (expand_normal): new inline function.
+ * builtins.c: use it, use EXPAND_NORMAL explicitely.
+ * dojump.c: use it.
+ * dwarf2out.c: use it.
+ * expr.c: use it.
+ * calls.c: use it.
+ * expmed.c: use it.
+ * except.c: use it.
+ * config/sparc/sparc.c: use it.
+ * config/i386/i386.c: use it.
+ * config/rs6000/rs6000.c: use it.
+ * config/arm/arm.c: use it.
+ * config/mips/mips.c: use it.
+ * stmt.c: use it, use EXPAND_NORMAL explicitely.
+
+2006-01-30 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/cygwin.h (GCC_DRIVER_HOST_INITIALIZATION): Cast
+ argv to the appropriate type.
+
+2006-01-30 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Remove
+ unreachable code.
+
+2006-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/26018
+ * config/s390/s390.c (struct machine_function): New flag
+ decomposed_literal_pool_addresses_ok_p.
+ (s390_reorg): Set it before final stage of literal pool transforms.
+ (s390_decompose_address): Only accept displacements of the form
+ (minus (label_ref ...) (label_ref ...)) if that flag is set.
+
+2006-01-30 Carlos O'Donell <carlos@codesourcery.com>
+
+ * optabs.c (prepare_cmp_insn): If unbaised and unsigned then bias
+ the comparison routine return.
+
2006-01-30 Michael Matz <matz@suse.de>
* global.c (find_reg): Only evict for global regs.
PR ada/25900
* tree-vrp.c (extract_range_from_assert): When merging a VR_RANGE
- with a VR_ANTI_RANGE and the VR_ANTI_RANGEis completely contained
+ with a VR_ANTI_RANGE and the VR_ANTI_RANGE is completely contained
within the VR_RANGE, use the VR_RANGE as the result, not the
VR_ANTI_RANGE.
- (adjust_range_with_scev): Reject ranges from SCEV which are out
- of bounds for the type.
+ (adjust_range_with_scev): Reject ranges from SCEV which are out of
+ bounds for the type.
2006-01-26 Daniel Berlin <dberlin@dberlin.org>
2006-01-20 Alan Modra <amodra@bigpond.net.au>
+ PR target/25668
* libgcc2.c (__floatdisf, __floatdidf): Don't use IBM Extended
Double TFmode.
(__floatundisf, __floatundidf): Likewise.