OSDN Git Service

Index: libcpp/ChangeLog
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 0594b9d..b22a17e 100644 (file)
@@ -1,3 +1,613 @@
+2005-03-12  Geoffrey Keating  <geoffk@apple.com>
+
+       * c-lex.c (c_lex_with_flags): Add parameter to call to 
+       cpp_spell_token.
+
+2005-03-11  Per Bothner  <per@bothner.com>
+
+       * c-tree.h (struct c_declarator): New id_loc field.
+       * c-pragma.h (c_lex_with_flags): Take position reference.
+       * c-lex.c (c_lex_with_flags): Set passed-in location from cpp token,
+       iff USE_MAPPED_LOCATION. (Type doesn't match otherwise.)
+       (c_lex): Pass dummy location to c_lex_with_flags.
+       * c-parser.c (c_lex_one_token): Set c_token's location using
+       c_lex_with_flags, instead of input_location, which might be "ahead".
+       (c_parser_direct_declarator): Set declarator's id_loc from
+       c_token's id_loc.
+       * c-decl.c (grokdeclarator): Set DECL_SOURCE_LOCATION from
+       declarator's id_loc, rather than probably-imprecise input_location.
+       (build_id_declarator): Initialize c_declarator's id_loc field.
+
+2005-03-11  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/20419
+       * builtins.c (expand_builtin_signbit): Force the signbit's word
+       into an integer register to avoid SUBREGs of floating point modes.
+
+2005-03-12  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfglayout.c, loop-doloop.c, profile.c, target-def.h,
+       target.h, targhooks.c, tracer.c, tree-ssa-loop-ch.c,
+       tree-ssa-loop-unswitch.c, tree-ssa-loop.c, vec.c, vmsdbgout.c,
+       config/m32r/m32r.md, config/xtensa/xtensa.h: Update copyright.
+
+2005-03-11  David Edelsohn  <edelsohn@gnu.org>
+
+       PR rtl-optimization/20306
+       * expr.c (emit_move_complex): Set try_int false if mode is
+       MODE_COMPLEX_FLOAT and mov_optab exists for inner mode.  Only try
+       emit_block_move if try_int is true.
+
+2005-03-11  Richard Henderson  <rth@redhat.com>
+
+       PR target/20415
+       * config/i386/mmx.md (vec_dupv4hi): Fix predicate.
+       * config/i386/i386.c (ix86_expand_vector_init_duplicate): Update
+       to match.
+
+2005-03-11  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.h (mips_fix_vr4130_string): Declare.
+       (TARGET_FIX_VR4130): New macro.
+       (TARGET_OPTIONS): Add -mfix-vr4130.
+       (ISA_HAS_MACCHI): New macro.
+       (ASM_SPEC): Add -mfix-vr4130.
+       * config/mips/mips.c (mips_fix_vr4130_string): New variable.
+       (override_options): Handle mips_fix_vr4130_string.
+       (mips_avoid_hazards): Clear all_noreorder_p
+       if we're working around VR4130 errata and the macc alternatives
+       are not available.
+       * config/mips/mips.md (mfhilo_<mode>): Turn into a define_expand.
+       (*mfhilo_<mode>, *mfhilo_<mode>_macc): New insns.
+       * config/mips/vr.h (DEFAULT_VR_ARCH): Set to mfix-vr4130.
+       (MULTILIB_DEFAULTS): Remove leading "march=".
+       (DRIVER_SELF_SPECS): Likewise.  Make -mfix-vr4130 imply -march=vr4130
+       if no architecture option is given.
+       * config/mips/t-vr (MULTILIB_OPTIONS): Use -mfix-vr4130 for the
+       VR4130 multilibs.
+       (MULTILIB_MATCHES): Map -march=vr4130 to the -mfix-vr4130 multilibs.
+       * doc/invoke.texi: Document -mfix-vr4130.
+
+2005-03-11  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/mips/mips.c (override_options): Only warn about -mint64
+       deprecation if TARGET_INT64.
+
+2005-03-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-attrs.def (ATTR_NONNULL_LIST, ATTR_NOTHROW_NONNULL,
+       ATTR_CONST_NOTHROW_NONNULL, ATTR_PURE_NOTHROW_NONNULL,
+       ATTR_MALLOC_NOTHROW_NONNULL): New "nonnull" attribute lists which
+       are non-specific regarding the nonnull parameter positions.
+       (ATTR_NONNULL_1_2, ATTR_NONNULL_1_4, ATTR_NOTHROW_NONNULL_1_2,
+       ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1,
+       ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2,
+       ATTR_MALLOC_NOTHROW_NONNULL_1): Delete.
+       
+       * builtins.def: Use the non-specific "nonnull" attibute lists.
+
+2005-03-11  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
+       single_pred_edge, single_succ, single_pred): Improve comments.
+
+2005-03-11  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
+       single_pred_edge, single_succ, single_pred): New inline functions.
+       * bb-reorder.c (rotate_loop, find_traces_1_round,
+       add_labels_and_missing_jumps, fix_up_fall_thru_edges,
+       duplicate_computed_gotos): Use the single_succ/pred functions.
+       * cfganal.c (forwarder_block_p): Ditto.
+       * cfgbuild.c (compute_outgoing_frequencies): Ditto.
+       * cfgcleanup.c (try_simplify_condjump, try_forward_edges,
+       outgoing_edges_match, try_crossjump_to_edge, try_optimize_cfg,
+       merge_seq_blocks): Ditto.
+       * cfghooks.c (split_edge, tidy_fallthru_edges): Ditto.
+       * cfglayout.c (fixup_reorder_chain): Ditto.
+       * cfgloop.c (mark_single_exit_loops, update_latch_info,
+       canonicalize_loop_headers, verify_loop_structure): Ditto.
+       * cfgloopmanip.c (remove_path, unloop, loop_delete_branch_edge,
+       mfb_update_loops, create_preheader, force_single_succ_latches,
+       create_loop_notes): Ditto.
+       * cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump,
+       force_nonfallthru_and_redirect, rtl_tidy_fallthru_edge,
+       commit_one_edge_insertion, purge_dead_edges,
+       cfg_layout_can_merge_blocks_p): Ditto.
+       * except.c (sjlj_emit_function_enter): Ditto.
+       * flow.c (init_propagate_block_info): Ditto.
+       * function.c (thread_prologue_and_epilogue_insns): Ditto.
+       * gcse.c (find_implicit_sets, bypass_conditional_jumps,
+       insert_insn_end_bb): Ditto.
+       * ifcvt.c (merge_if_block, find_if_block, find_if_case_1,
+       find_if_case_2): Ditto.
+       * lambda-code.c (perfect_nestify): Ditto.
+       * lcm.c (optimize_mode_switching): Ditto.
+       * loop-doloop.c (doloop_modify): Ditto.
+       * loop-init.c (loop_optimizer_init): Ditto.
+       * loop-iv.c (simplify_using_initial_values): Ditto.
+       * loop-unroll.c (unroll_loop_runtime_iterations): Ditto.
+       * loop-unswitch.c (unswitch_loop): Ditto.
+       * modulo-sched.c (generate_prolog_epilog): Ditto.
+       * predict.c (combine_predictions_for_insn, estimate_probability,
+       tree_estimate_probability, last_basic_block_p,
+       estimate_bb_frequencies): Ditto.
+       * profile.c (branch_prob): Ditto.
+       * regrename.c (copyprop_hardreg_forward): Ditto.
+       * sched-rgn.c (is_cfg_nonregular, find_rgns, update_live): Ditto.
+       * tracer.c (layout_superblocks): Ditto.
+       * tree-cfg.c (tree_can_merge_blocks_p, tree_merge_blocks,
+       cfg_remove_useless_stmts_bb, cleanup_control_flow,
+       cleanup_control_expr_graph, disband_implicit_edges,
+       tree_find_edge_insert_loc, bsi_commit_edge_inserts,
+       tree_verify_flow_info, tree_make_forwarder_block,
+       tree_forwarder_block_p, remove_forwarder_block,
+       remove_forwarder_block_with_phi, merge_phi_nodes): Ditto.
+       * tree-if-conv.c (tree_if_conversion): Ditto.
+       * tree-mudflap.c (mf_build_check_statement_for): Ditto.
+       * tree-ssa-dce.c (remove_dead_stmt): Ditto.
+       * tree-ssa-dom.c (dom_opt_finalize_block): Ditto.
+       * tree-ssa-loop-ch.c (should_duplicate_loop_header_p,
+       copy_loop_headers): Ditto.
+       * tree-ssa-loop-im.c (loop_commit_inserts): Ditto.
+       * tree-ssa-loop-ivopts.c (compute_phi_arg_on_exit): Ditto.
+       * tree-ssa-loop-manip.c (split_loop_exit_edge, ip_normal_pos,
+       lv_adjust_loop_entry_edge, tree_ssa_loop_version): Ditto.
+       * tree-ssa-loop-niter.c (simplify_using_initial_conditions): Ditto.
+       * tree-ssa-loop-unswitch.c (simplify_using_entry_checks): Ditto.
+       * tree-ssa-phiopt.c (tree_ssa_phiopt, value_replacement): Ditto.
+       * tree-ssa-pre.c (compute_antic_aux, insert_aux, init_pre): Ditto.
+       * tree-ssa-threadupdate.c (redirect_edges): Ditto.
+       * tree-tailcall.c (independent_of_stmt_p, find_tail_calls,
+       eliminate_tail_call, tree_optimize_tail_calls_1): Ditto.
+       * tree-vect-analyze.c (vect_analyze_loop_form): Ditto.
+       * tree-vect-transform.c (vect_update_ivs_after_vectorizer): Ditto.
+       * tree-vectorizer.c (slpeel_update_phi_nodes_for_guard,
+       slpeel_add_loop_guard): Ditto.
+
+2005-03-11  James A. Morrison  <phython@gcc.gnu.org>
+
+        PR tree-optimization/15784
+        * fold-const.c (fold): Fold ~A + 1 to -A.  Fold -A - 1
+        and -1 - A to ~A.
+
+        * stmt.c (expand_case): Don't change index_type.  Convert minval
+        to the proper type.
+
+       PR tree-optimization/20130
+       * fold-const.c (fold): Fold x * -1 into -x.
+
+2005-03-11  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR rtl-optimization/20331
+       * rtlanal.c (modified_between_p): Check its address first for MEM.
+       (modified_in_p): Likewise.
+
+2005-03-11  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config.gcc (hppa*64*-*-hpux11*): Use pa/t-hpux-shlib.
+
+2005-03-10  Steven Bosscher  <stevenb@suse.de>
+
+       * expr.c (expand_expr_real_1): If possible, use a conditional
+       move for expanding MIN_EXPR and MAX_EXPR.
+       Use temp for moving around rtx-en.
+
+2005-03-10  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR rtl-opt/20412
+       * simplify-rtx.c (simplify_relational_operation_1): Fix typo - check the
+       correct mode.
+
+2005-03-10  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (expand_builtin_signbit): Extend to handle floating
+       point modes wider than the largest integer type, using the
+       operand_subword_force function to obtain the signbit's word.
+
+2005-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/20322
+       * combine.c (try_combine): If recog_for_combine added CLOBBERs
+       to NEWI2PAT, fail to combine if they are used by NEWPAT.
+
+2005-03-10  Aldy Hernandez  <aldyh@redhat.com>
+
+       * doc/invoke.texi: Add 8540 to list of cpus in rs6000 cpu section.
+
+2005-03-10  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-outof-ssa.c (analyze_edges_for_bb): Make the return
+       type void.
+       (perform_edge_inserts): Unconditionally call
+       free_dominator_info.
+
+       * tree-outof-ssa.c (analyze_edges_for_bb): Update a comment.
+
+2005-03-10  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (MEMBER_TYPE_FORCES_BLK): Define.
+
+2005-03-10  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * bitmap.c (bitmap_copy): Remove manual loop unrolling.
+
+       * value-prof.c (rtl_find_values_to_profile): Use gcc_assert and
+       gcc_unreachable.
+       (rtl_register_value_prof_hooks,
+       tree_value_profile_transformations,
+       tree_register_value_prof_hooks): Likewise.
+       * var-tracking.c (stack_adjust_offset_pre_post,
+       variable_htab_free, variable_union, dataflow_set_different_2,
+       count_uses, variable_was_changed, set_frame_base_location,
+       set_variable_part, emit_note_insn_var_location, vt_emit_notes,
+       vt_add_function_parameters): Likewise.
+       * varasm.c (named_section_real, named_section, make_decl_rtl,
+       asm_emit_uninitialised, assemble_integer, decode_addr_const,
+       const_hash_1, compare_constant, copy_constant, force_const_mem,
+       output_constant_pool_2, output_constant_pool_1, output_constant,
+       output_constructor, make_decl_one_only, decl_tls_model,
+       default_no_named_section, default_elf_select_section_1,
+       default_unique_section_1): Likewise.
+       * vec.c (vec_gc_o_reserve, vec_heap_o_reserve): Likewise.
+       * vmsdbgout.c (addr_const_to_string): Likewise.
+
+       PR c++/20375
+       * function.c (struct assign_parm_data_one): Remove last_named
+       field.
+       (assign_parm_find_data_types): Don't determine last_named.
+       Reorder named_parm determination.
+       (assign_parms): Only setup varargs on the last non-varadic
+       parameter.
+
+2005-03-10  Kazuhiro Inaoka  <inaoka.lazuhiro@renesas.com>
+
+       * config/m32r/m32r.md (load_sda_base_32): New pattern.  Loads
+       sda base address on medium model.
+
+2005-03-10  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * Makefile.in (tree-optimize.o): Add CFGLOOP_H dependence.
+       * cfgloop.c (flow_loop_nodes_find): Export.
+       * cfgloop.h (flow_loop_nodes_find, fix_loop_structure):
+       Declare.
+       * cfgloopmanip.c (fix_loop_structure): New function.
+       * predict.c (predict_loops): Clean up the loops information.
+       * tree-cfg.c (cleanup_tree_cfg_loop): New function.
+       (tree_can_merge_blocks_p, remove_bb, tree_forwarder_block_p): Respect
+       loop structure.
+       * tree-flow.h (cleanup_tree_cfg_loop): Declare.
+       (rewrite_into_loop_closed_ssa): Declaration changed.
+       * tree-loop-linear.c (linear_transform_loops): Add argument to
+       rewrite_into_loop_closed_ssa call.
+       * tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
+       * tree-ssa-loop-im.c (move_computations): Ditto.
+       * tree-ssa-loop.c (tree_loop_optimizer_init): Ditto.
+       * tree-vectorizer.c (vectorize_loops): Ditto.
+       * tree-optimize.c: Include cfgloop.h.
+       (execute_todo): Choose whether to call cleanup_tree_cfg or
+       cleanup_tree_cfg_loop.
+       * tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variables,
+       (tree_unroll_loops_completely): Enable cleanup_tree_cfg_loop call.
+       * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Enable
+       cleanup_tree_cfg_loop call.
+       * tree-ssa-loop-manip.c (find_uses_to_rename_bb): New function.
+       (find_uses_to_rename, rewrite_into_loop_closed_ssa): Support
+       work on part of cfg.
+
+2005-03-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR inline-asm/20314
+       * gimplify.c (gimplify_asm_expr): Handle input/output constraints
+       with multiple alternatives.
+
+       * stmt.c (parse_output_constraint): Fix a typo.
+
+2005-03-09  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (TRAMPOLINE_TEMPLATE): Use "no-transform"
+       assembly directive instead of deprecated "no-generics".
+
+2005-03-09  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (s390_secondary_output_reload_class): Adapt check
+       for non-offsettable memory references to cope with outstanding reload
+       replacements.
+       * config/s390/s390.md ("reload_outti"): Call find_replacement to
+       avoid losing outstanding address reloads.
+       ("reload_outdi", "reload_outdf"): Likewise.
+
+2005-03-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtins.c (fold_builtin_cbrt, fold_builtin_pow): Rearrange
+       code.  Add more cbrt transformations.
+
+2005-03-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * fold-const.c (fold_unary_to_constant): Add FIX_ROUND_EXPR case.
+
+2005-03-09  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * fold-const.c (fold_unary, fold_binary, fold_ternary): Return
+       NULL_TREE when a given tree is not simplified.
+       (fold): Return the original tree when any of the functions
+       mentioned above NULL_TREE.
+
+       * fold-const.c (fold_unary, fold_binary): Take decomposed
+       arguments, code, type, op0, and op1 in case of fold_binary.
+       (fold): Update calls to fold_unary and fold_binary.
+
+2005-03-09  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (fold_builtin_unordered_cmp): Change prototype to take
+       a fndecl and an arglist instead of a CALL_EXPR, exp.
+
+2005-03-09  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfglayout.c (fixup_reorder_chain): Remove old_bb.
+
+       * cfgrtl.c (cfg_layout_merge_blocks): Remove new_e.
+
+       * expr.c (expand_assignment): Remove orig_to_rtx.
+
+       * fold-const.c (int_const_binop): Remove no_overflow.
+
+       * ifcvt.c (noce_emit_move_insn): Remove inmode.
+
+       * loop-iv.c (get_biv_step_1): Remove lhs.
+
+       * loop-unroll.c (analyze_insns_in_loop): Remove preheader.
+
+       * real.c (real_nan): Remove neg.
+
+       * function.c (thread_prologue_and_epilogue_insns): Remove i
+       and newinsn.
+
+       * tree-data-ref.c (array_base_name_differ_p): Remove ta and
+       tb.
+
+       * tree-eh.c (tree_could_trap_p): Remove idx.
+
+       * tree-into-ssa.c (ann): Remove ann.
+
+       * tree-outof-ssa.c (num_nodes): Remove num_nodes.
+
+       * tree-sra.c (decide_block_copy): Remove inst_count.
+
+       * tree-ssa-alias.c (may_alias_p): Remove v_ann.
+
+       * tree-ssa-loop-im.c (lhs): Remove.
+
+       * cfgbuild.c (state, STATE, SET_STATE,
+       BLOCK_USED_BY_TABLEJUMP, FULL_STATE): Move just before
+       make_edges.
+       (make_edges): Speed up by skipping blocks with BLOCK_ORIGINAL.
+       (find_basic_blocks): Set the state of each basic block to
+       BLOCK_NEW.
+
+2005-03-08  Jeff Law  <law@redhat.com>
+
+       * tree-cfg.c (cleanup_control_flow): If removal of a computed
+       goto results in the removal of edges in the CFG, then we need
+       to recompute dominators.
+
+2005-03-09  Ben Elliston  <bje@au.ibm.com>
+
+       * c-common.c (c_do_switch_warnings): Comment fix.
+
+2005-03-08  Julian Brown  <julian@codesourcery.com>
+
+       * Patch from 2005-03-08 reverted for causing regressions and
+       ppc-darwin bootstrap failure.
+
+2005-03-08  Fariborz Jahanian <fjahanian@apple.com>
+
+       * config/rs6000/rs6000.c (invalid_arg_for_unprototyped_fn): 
+       Define the real function for ppc-darwin.
+       * c-typeck.c (convert_arguments): Check for target-specific
+       invalid argument call to unprototyped function.
+       * target-def.h (TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN): 
+       New Macro.
+       * target.h (invalid_arg_for_unprototyped_fn): New field 
+       in struct calls.
+       * targhooks.c (hook_invalid_arg_for_unprototyped_fn): New 
+       default target hook.
+       * targhooks.h (hook_invalid_arg_for_unprototyped_fn): 
+       Declare.
+
+2005-03-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * c-typeck.c (constructor_stack, constructor_range_stack,
+       initializer_stack): Make them static.
+
+       * cfg.c (rbi_pool): Make it static.
+
+       * gimple-low.c (lower_stmt_body): Make it static.
+       * tree-flow.h: Remove the corresponding prototype.  Don't
+       declare lower_data.
+
+       * sched-deps.c (cache_size): Make it static.
+
+       * stor-layout.c (lang_adjust_rli): Make it static.
+
+2005-03-08  Julian Brown  <julian@codesourcery.com>
+
+       * config/elfos.h (MAKE_DECL_ONE_ONLY): Redefined to stop DECL_WEAK
+       from being used for symbols with vague linkage when
+       HAVE_GAS_COMDAT_GROUP is true.
+
+2005-03-08  J"orn Rennecke <joern.rennecke@st.com>
+
+       * jump.c (invert_jump_1): Don't call redirect_jump_1 with
+       nlabel == JUMP_LABEL (jump).
+
+2005-03-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * c-common.c, c-opts.c, combine.c, cse.c, dojump.c,
+       gimplify.c, tree-dfa.c, tree-ssa-loop-ivopts.c,
+       tree-ssa-phiopt.c, tree-ssa-pre.c, tree-ssa-sink.c,
+       tree-vect-analyze.c, tree.def, tree.h: Fix comment formatting.
+
+2005-03-08  Alexey Neyman  <alex.neyman@auriga.ru>
+
+       PR c/14411
+       * calls.c (flags_from_decl_or_type): Handle eturns_twice' attribute.
+       * c-common.c (handle_returns_twice): New function.
+       (c_common_attribute_table): Declare eturns_twice' attribute.
+       * doc/extend.texi: Document eturns_twice' attribute.
+       * tree.h (DECL_IS_RETURNS_TWICE): New macro.
+       (struct tree_decl): Add returns_twice_flag.
+
+2005-03-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-phiopt.c: Fix a comment typo.
+
+       * c-semantics.c, cfghooks.c, diagnostic.h, loop-iv.c,
+       loop-unswitch.c, modulo-sched.c, stor-layout.c, tree-gimple.h,
+       config/i386/cygwin1.c, doc/cfg.texi, doc/objc.texi: Update
+       copyright.
+
+2005-03-08  Richard Henderson  <rth@redhat.com>
+
+       * config/alpha/alpha.c (code_for_builtin): Replace special-case
+       builtin codes with ctzdi2, clzdi2, popcountdi2.
+       (struct alpha_builtin_def): Add is_const.
+       (zero_arg_builtins, one_arg_builtins, two_arg_builtins): Init it.
+       (alpha_v8qi_u, alpha_v8qi_s, alpha_v4hi_u, alpha_v4hi_s): New.
+       (alpha_init_builtins): Init them.  Set nothrow and const attributes
+       on builtins.
+       (alpha_fold_builtin_cmpbge, alpha_fold_builtin_zapnot, 
+       alpha_fold_builtin_extxx, alpha_fold_builtin_insxx, 
+       alpha_fold_builtin_mskxx, alpha_fold_builtin_umulh, 
+       alpha_fold_vector_minmax, alpha_fold_builtin_perr,
+       alpha_fold_builtin_pklb, alpha_fold_builtin_pkwb,
+       alpha_fold_builtin_unpkbl, alpha_fold_builtin_unpkbw,
+       alpha_fold_builtin_cttz, alpha_fold_builtin_ctlz,
+       alpha_fold_builtin_ctpop, alpha_fold_builtin): New.
+       (TARGET_FOLD_BUILTIN): New.
+       * config/alpha/alpha.md (UNSPEC_CTTZ): Remove.
+       (UNSPEC_CTLZ, UNSPEC_CTPOP): Remove.
+       (ffsdi2): Use ctz.
+       (cttz, builtin_cttz, builtin_ctlz, builtin_ctpop): Remove.
+
+2005-03-08  Ira Rosen  <irar@il.ibm.com>
+
+       PR tree-optimization/20122
+       * tree-vect-analyze.c (vect_object_analysis): Analyze initial
+       condition of access function instead of base.
+
+2005-03-07  Jeff Law  <law@redhat.com>
+           Steven Bosscher  <stevenb@suse.de>
+
+       * tree-cfg.c (find_taken_edge_computed_goto): New function.
+       (find_taken_edge): Call find_taken_edge_computed_goto as
+       appropriate.  Allow any gimple invariant rather than just
+       INTEGER_CST for VAL.
+       (cleanup_control_flow): Cleanup a computed goto which has turned
+       into a simple goto.
+       (tree_merge_blocks): If block B has any forced labels, move
+       them to the start of block A.
+       * tree-ssa-dom.c (thread_across_edge): Allow threading across
+       computed gotos as well.
+       * tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges): Handle
+       removal of unnecessary computed gotos too.
+       (lookup_redirection_data): Fix type of INSERT argument.  Callers
+       updated.
+
+2005-03-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-phiopt.c: Update copyright.  Fix indentations.
+       Remove trailing spaces.
+
+       * gimplify.c (gimple_push_bind_expr, gimple_pop_bind_expr,
+       unshare_all_trees): Make them static.
+       * tree-gimple.h: Remove the corresponding prototypes.
+
+       * diagnostic.h: Remove unused prototype
+       debug_output_buffer.
+       * modulo-sched.c: Remove unused prototype
+       set_row_column_for_ps.
+
+       * tree-ssa-phiopt.c (tree_ssa_phiopt,
+       replace_phi_edge_with_variable): Remove unused variable i.
+
+2005-03-07  Per Bothner  <per@bothner.com>
+
+       * tree.h (DECL_IS_BUILTIN): Reverted my patch from earlier today.
+
+2005-03-06  Andrew Pinski  <pinskia@physics.uc.edu>
+       
+       PR tree-opt/17671
+       * tree-ssa-phiopt.c (tree_ssa_phiopt): Rewrite so we base the
+       bbs on the COND_EXPR instead of the PHI_NODEs.
+       (candidate_bb_for_phi_optimization): Remove.
+       (replace_phi_with_stmt): Rename to ...
+       (replace_phi_edge_with_variable): this and change so that we
+       replace the phi argument instead of removing the PHI.
+       (conditional_replacement): Change so we deal with PHI with more
+       than two arguments.
+       (value_replacement): Likewise.
+       (abs_replacement): Likewise.
+
+2005-03-07  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000-protos.h: Rename output_e500_flip_eq_bit to
+       output_e500_flip_gt_bit.
+
+       * config/rs6000/rs6000.c (print_operand): case D: Print out bit 31
+       as bit 31.
+       (rs6000_generate_compare): Fix logic to look at the correct bits.
+       (output_e500_flip_eq_bit): Rename to output_e500_flip_gt_bit.
+       Look at GT bit.
+       (rs6000_emit_sCOND): Rename gen_e500_flip_eq_bit to
+       gen_e500_flip_gt_bit.  Rename gen_move_from_CR_eq_bit to
+       gen_move_from_CR_gt_bit.
+
+       * config/rs6000/rs6000.md ("move_from_CR_eq_bit"): Change bit
+       ("move_from_CR_eq_bit"): Rename to move_from_CR_gt_bit.
+       (UNSPEC_MV_CR_EQ): Rename to UNSPEC_MV_CR_GT.
+
+       * config/rs6000/spe.md ("e500_cr_ior_compare"): New.
+       (E500_CR_IOR_COMPARE): New constant.
+
+2005-03-08  Earl Chew <earl_chew@agilent.com>
+           David Billinghurst <David.Billinghurst@riotinto.com>
+
+       * config/i386/host-cygwin.c: New file to support precompiled
+       headers on cygwin
+       * config/i386/x-cygwin: Use host-cygwin.c on cygwin host
+       * config.host: Use above files for cygwin host.
+
+2005-03-07  David Edelsohn  <edelsohn@gnu.org>
+
+       * fold-const.c (fold_binary_op_with_conditional_arg): Fix typo
+       ordering ops from earlier change.
+
+2005-03-07  Per Bothner  <per@bothner.com>
+
+       Various fixes to allow us to again build if --enable-mapped-location:
+       * c-decl.c (finish_function): Use SET_EXPR_LOCATION instead of
+       unavailable annotate_with_file_line, if USE_MAPPED_LOCATION.
+       * tree-cfg.c (remove_bb): If USE_MAPPED_LOCATION, change type of
+       local variable loc. Change logic appropriately.
+       * tree-vect-transform.c (vect_finish_stmt_generation): Use
+       EXPR_LOCATION rather than EXPR_LOCUS if USE_MAPPED_LOCATION.    
+       * c-parser.c (c_parser_for_statement): Initialize loc variable.
+       * tree.h (DECL_IS_BUILTIN): Temporarily revert definition of
+       DECL_IS_BUILTIN in the USE_MAPPED_LOCATION because of jc1 issues.
+
+2005-03-07  Richard Sandiford  <rsandifo@redhat.com>
+
+       PR rtl-optimization/19683
+       * reload1.c (choose_reload_regs): Pass the number of bits, not the
+       number of bytes, to smallest_int_for_mode.  Fix arguments to
+       REG_CANNOT_CHANGE_MODE_P.
+
+2005-03-07  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * reorg.c (relax_delay_slots): Check that the jump is
+       conditional before trying to invert it.
+
 2005-03-07  Kazu Hirata  <kazu@cs.umass.edu>
 
        * bb-reorder.c (max_entry_frequency, max_entry_frequency):
        * cfghooks.c (verify_flow_info): Remove local variable
        num_bb_notes.
 
+       * cfgrtl.c (rtl_verify_flow_info_1): Remove local variable
+       last_bb_seen.
+
+       * loop-unswitch.c (unswitch_loop): Remove local variable src.
+
 2005-03-07  David Billinghurst <David.Billinghurst@riotinto.com>
 
        * config/i386/cygwin1.c(mingw_scan): Use xstrdup in calls to putenv.
        Revert for now:
        2005-03-03  James A. Morrison  <phython@gcc.gnu.org>
        PR tree-optimization/15784
-       * fold-const.c (fold): Fold ~A + 1 to -1.  Fold -A - 1
+       * fold-const.c (fold): Fold ~A + 1 to -A.  Fold -A - 1
        and -1 - A to ~A.
 
 2005-03-04  Ben Elliston  <bje@au.ibm.com>
 2005-03-03  James A. Morrison  <phython@gcc.gnu.org>
 
        PR tree-optimization/15784
-       * fold-const.c (fold): Fold ~A + 1 to -1.  Fold -A - 1
+       * fold-const.c (fold): Fold ~A + 1 to -A.  Fold -A - 1
        and -1 - A to ~A.
 
 2005-03-03  David Edelsohn  <edelsohn@gnu.org>