OSDN Git Service

PR target/26481
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9f19a12..e90b76e 100644 (file)
@@ -1,3 +1,565 @@
+2006-05-04  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/26481
+       * config/rs6000/rs6000.md (stmsi_power): Mark clobber constraint
+       with output modifier.
+
+2006-05-04  Richard Sandiford  <richard@codesourcery.com>
+
+       PR target/26765
+       * config/mips/mips.c (mips_symbolic_address_p): Return true
+       for SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL, SYMBOL_TPREL,
+       SYMBOL_GOTTPREL, and SYMBOL_TLS.
+
+2006-05-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/14287
+       PR tree-optimization/14844
+       PR tree-optimization/19792
+       PR tree-optimization/21608
+       PR tree-optimization/27090
+       * tree-ssa-pre.c (try_combine_conversion): New function.
+       (compute_avail): After constructing the value-handle
+       expression, use try_combine_conversion to combine NOP_EXPRs
+       with previous value-handle expressions and use the result if it
+       is available.
+
+2006-05-04  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * config/mips/linux64.h (DWARF_OFFSET_SIZE): Remove.
+
+2006-05-04  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/25962
+       * cgraphunit.c (verify_cgraph_node): Fix cgraph_hash testing.
+
+2006-05-04  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/predicates.md (const01_rtx): Tell generator programs
+       that this only matches CONST_INTs.  All users changed to VOIDmode
+       operands.
+
+       * config/bfin/bfin.c: Include "optabs.h".
+       (bfin_rtx_costs): Some costs for vector operations, to allow combine
+       to do more work.
+       (enum bfin_builtins): Add a number of fractional and vector builtins.
+       (bfin_init_builtins): Likewise.
+       (struct builtin_description, bdesc_2arg, bdesc_1arg): New.
+       (safe_vector_operand, bfin_expand_binop_builtin,
+       bfin_expand_unop_builtin): New functions.
+       (bfin_expand_builtin): Handle the new builtins.
+       * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
+       __ADSPBLACKFIN__.
+
+2006-05-04  Leehod Baruch  <leehod@il.ibm.com>
+
+        * see.c: New file.
+        * Makefile.in (OBJS-common): Add see.o.
+        (see.o): Add dependencies.
+        * common.opt (fsee): New flag for the see optimization was added.
+        * opts.c (flag_see): Initialized.
+        * passes.c (init_optimization_passes, pass_see): New pass.
+        * rtl.h (see_main): Declaration as extern.
+        * timevar.def (TV_SEE): New.
+        * tree-pass.h (pass_see): Declaration as extern.
+        * invoke.texi (-fsee): Document.
+        * recog.c (validate_simplify_insn): New function.
+        * recog.h (validate_simplify_insn): Declaration as extern.
+        * df-problems.c (df_chain_dump): Check for NULL.
+
+2006-05-04  Kenneth Zadeck <zadeck@naturalbridge.com>
+            Daniel Berlin  <dberlin@dberlin.org>
+
+        * cfgrtl.c (insert_insn_bb_end_new): New function.
+        * basic-block.h (insert_insn_bb_end_new): Declaration as extern.
+
+2006-05-04  Leehod Baruch  <leehod.baruch@weizmann.ac.il>
+
+        * df.h (struct web_entry): Moved from web.c.
+        (union_defs): Declaration as extern.
+        (unionfind_root): Likewise.
+        (unionfind_union): Likewise.
+        * web.c (struct web_entry): Moved to df.h.
+        (unionfind_root): Remove static declaration.
+        (unionfind_union): Likewise.
+        (union_defs): Likewise and generalize to use callback function.
+        (web_main): Update arguments for union_defs function call.
+
+2006-05-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/26447
+       * tree-ssa-pre.c (realify_fake_stores): For necessary loads
+       produce SSA_NAME copies before the store stmt to avoid
+       breaking exception handling.
+
+2006-05-04  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/27388
+       * gimplify.c (omp_is_private): If var is shared in some outer context,
+       return false instead of true.  Stop searching on parallel context
+       boundary.
+
+2006-05-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR java/8260
+       * coverage.c: Use get_gcov_unsigned_t() instead of
+       unsigned_type_node all over.
+
+2006-05-02  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/27381
+       * tree-phinodes.c (remove_phi_arg_num): When moving a phi argument, 
+       maintain the same immediate_use links.
+       * tree-ssa-operands.c (dump_immediate_uses_for): Show iteration marker 
+       node rather than segfaulting.
+
+2006-05-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/27395
+       * gimplify.c (gimplify_scan_omp_clauses): Compare OMP_CLAUSE_CODE
+       rather than TREE_CODE to OMP_CLAUSE_REDUCTION.  Set also GOVD_SEEN
+       bit for OMP_CLAUSE_REDUCTION_PLACEHOLDER.
+
+2006-05-02  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR tree-optimization/26626
+       * tree-ssa-structalias.c (compute_points_to_sets): For now, solve
+       always.
+       * tree-ssa-operands.c (access_can_touch_variable): Allow
+       typecasting through union pointers.
+
+2006-05-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/26943
+       * omp-low.c (maybe_lookup_decl_in_outer_ctx): New function.
+       (build_outer_var_ref): Use maybe_lookup_decl_in_outer_ctx
+       to find if var will be a global variable even in the nested context.
+       (omp_copy_decl): Only check for global variable at the end, it might
+       be overridden in outer contexts.
+       (scan_sharing_clauses): For global variables don't create a field.
+       (lower_rec_input_clauses): Do nothing for global shared variables.
+       Emit a barrier at the end of ILIST if there were any decls in both
+       firstprivate and lastprivate clauses.
+       (lower_send_clauses): Do nothing for global variables except for
+       COPYIN.
+
+2006-05-02  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree.c (unsigned_type_for, signed_type_for): Make sure a type
+       of the correct signedness is returned.
+
+2006-05-02  Jeff Law  <law@redhat.com>
+
+       PR tree-optimization/27364
+       * tree-vrp.c (vrp_int_const_binop): Fix detection of overflow from
+       multiply expressions.
+
+2006-05-02  Tom Tromey  <tromey@redhat.com>
+
+       * tree-flow-inline.h (op_iter_init_phiuse): Fixed typo.
+
+2006-05-02  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR target/27387
+       * arm.c (arm_output_mi_thunk): Use pc-relative addressing when
+       -mthumb -fPIC are used.
+
+2006-05-02  Joshua Kinard  <kumba@gentoo.org>
+
+       PR target/25871
+       * gcc/config/mips/mips.h (TRAMPOLINE_TEMPLATE): Avoid 32-bit moves
+       with 64-bit pointers.
+
+2006-05-02  Paul Brook  <paul@codesourcery.com>
+
+       * config/arm/arm.c (add_minipool_forward_ref): Check if insn
+       and pool overlap.
+       (create_fix_barrier): Check that a suitable barrier location is
+       found.
+       (arm_reorg): Include ftmp->address in allowable range of addresses.
+
+2006-05-02  David Billinghurst <David.Billinghurst@riotinto.com>
+
+       PR ada/27366
+       * ada/env.c (__gnat_clearenv): Use unsetenv() to clear environment 
+       on Cygwin.
+
+2006-05-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/27337
+       * gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF
+       around RESULT_DECL for result passed by reference.
+       (gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen.
+       * omp-low.c (use_pointer_for_field): Don't look at
+       DECL_HAS_VALUE_EXPR_P for RESULT_DECLs.
+       (scan_omp_1): Call remap_decl on RESULT_DECLs.
+       (lower_rec_input_clauses): Don't allocate VLA memory for the second
+       time or var for passing by reference for
+       OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses.  Allow creation of
+       TREE_ADDRESSABLE variables when passing by reference.
+
+       * omp-low.c (dump_omp_region): Fix output formatting.
+
+       PR middle-end/27328
+       * omp-low.c (remove_exit_barrier): Handle NULL exit_bb.
+       (expand_omp_parallel): Likewise.
+       * tree-cfg.c (move_sese_region_to_fn): Likewise.
+
+       PR middle-end/27325
+       * omp-low.c (lower_omp_sections): Call maybe_catch_exception
+       on statement list containing also constructors and destructors.
+       (lower_omp_single, lower_omp_for, lower_omp_parallel): Likewise.
+
+       PR middle-end/27310
+       * except.c (duplicate_eh_regions): Fix clearing of
+       cfun->eh->region_array entries.
+
+2006-05-01  DJ Delorie  <dj@redhat.com>
+
+       * configure.ac (gcc_cv_nm): Don't use an in-tree nm if
+       build!=host.
+       (gcc_cv_objdump): Likewise.
+       * configure: Regenerated.
+
+2006-05-01  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR target/27374
+       * config/arm/vfp.md (*arm_movdi_vfp): Correct the output
+       templates for case 3 and 4.
+
+2006-05-01  DJ Delorie  <dj@redhat.com>
+
+       * vec.c: Include bconfig.h when appropriate.
+       * Makefile.in (build/vec.o): Adjust dependencies.
+       * mkconfig.sh: Make sure config.h isn't used for build machine
+       compiles.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-into-ssa.c (phis_to_rewrite, blocks_with_phis_to_rewrite): New
+       variables.
+       (mark_phi_for_rewrite): New function.
+       (insert_phi_nodes_for, mark_use_interesting): Call
+       mark_phi_for_rewrite.
+       (rewrite_update_phi_arguments): Traverse only phis in phis_to_rewrite.
+       (update_ssa): Initialize and free phis_to_rewrite.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/27291
+       * loop-doloop.c (add_test, doloop_modify): Handle the case condition is
+       folded to a constant.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27283
+       * tree-ssa-loop-ivopts.c (struct nfe_cache_elt): Store just trees,
+       not whole # of iteration descriptions.
+       (niter_for_exit): Return just # of iterations.  Fail if # of iterations
+       uses abnormal ssa name.
+       (niter_for_single_dom_exit): Ditto.
+       (find_induction_variables, may_eliminate_iv): Expect niter_for_exit to
+       return just the number of iterations.
+
+2006-05-01  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27144
+       * tree-ssa-loop-niter.c (derive_constant_upper_bound): New function.
+       (record_estimate): Only record constant upper bound.
+       (infer_loop_bounds_from_undefined): Call
+       compute_estimated_nb_iterations just once.
+       (proved_non_wrapping_p): Renamed to ...
+       (n_of_executions_at_most): ... this.  Expect bound to be a constant.
+       (convert_step_widening, scev_probably_wraps_p): Call
+       n_of_executions_at_most instead of proved_non_wrapping_p.
+       (substitute_in_loop_info): Do not replace values in bounds.
+       * cfgloop.h (struct nb_iter_bound): Remove "additional" field.  Update
+       comments.
+
+2006-05-01  Richard Henderson  <rth@redhat.com>
+
+       PR c/27358
+       * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Move after
+       c_parser_skip_to_pragma_eol.  Convert to switch statement.  Handle
+       CPP_PRAGMA.
+
+2006-05-01  Roger Sayle  <roger@eyesopen.com>
+
+       * c-typeck.c (parser_build_binary_op): Don't call the function
+       unsigned_conversion_warning to spot operand/result type overflow.
+       (build_binary_op): Instead, call convert_and_check instead of
+       convert to report the problem when the operands are promoted.
+       * c-common.c (unsigned_conversion_warning): Make static.
+       * c-common.h (unsigned_conversion_warning): Delete prototype.
+
+2006-05-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/26726
+       * tree-ssa-loop-ivopts.c (idx_find_step): Mark source of the
+       problem ...
+       (find_interesting_uses_address): ... we work around here
+       by folding INDIRECT_REFs in the substituted base.
+
+2006-05-01  Diego Novillo  <dnovillo@redhat.com>
+
+       * omp-low.c (dump_omp_region): Add newlines.
+
+2006-04-30  Roger Sayle  <roger@eyesopen.com>
+
+       * common.opt (Woverflow): New command line option.
+       * c-common.c (constant_expression_warning): Check warn_overflow.
+       (overflow_waring): Pass OPT_Woverflow to warning.
+       (unsigned_conversion_warning): Likewise.
+       (convert_and_check): Likewise.
+       * doc/invoke.texi: Document new command line option.
+
+2006-04-30  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_override_options): Enable
+       TARGET_NO_FP_IN_TOC for section anchors.
+       (optimization_options): Enable section anchors for all
+       non-"Objective" languages.
+
+2006-04-28  Eric Christopher  <echristo@apple.com>
+
+       * config/darwin-c.c (darwin_ms_struct): Move this
+       (darwin_set_default_type_attributes): and this...
+       * config/darwin.c: ... here.
+       * config/darwin.h (darwin_ms_struct): Declare.
+
+2006-04-28  Andrew MacLeod  <amacleod@redhat.com>
+
+       * tree-ssa-dom.c (propagate_rhs_into_lhs): Fix assert clause.
+
+2006-04-28  Roger Sayle  <roger@eyesopen.com>
+
+       PR c/25309
+       * c-typeck.c (struct spelling): Make I an unsigned HOST_WIDE_INT.
+       (push_array_bounds): Delete prototype.  Change BOUNDS argument to
+       an unsigned HOST_WIDE_INT.
+       (print_spelling): Use HOST_WIDE_INT_PRINT_UNSIGNED to output the
+       array index.
+       (really_start_incremental_init): No need to call convert because
+       bitsize_zero_node is already of type bitsizetype.
+       (push_init_level): Extract the value of constructor_index as an
+       unsigned HOST_WIDE_INT quantity, using tree_low_cst.
+       (process_init_element): Likewise.
+
+2006-04-28  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * gcc.c (process_command): Add program name to GCC_EXEC_PREFIX
+       value before passing to make_relative_prefix.
+
+2006-04-28  Alan Modra  <amodra@bigpond.net.au>
+
+       PR middle-end/27260
+       * builtins.c (expand_builtin_memset): Expand val in original mode.
+
+2006-04-27  Eric Christopher  <echristo@apple.com>
+
+       * target-def.h (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Bracket
+       with #ifndef/#endif.
+       * config/darwin-c.c (darwin_ms_struct): New.
+       (darwin_pragma_ms_struct): Ditto.
+       (darwin_set_default_type_attributes): Ditto.
+       * config/darwin-protos.h (darwin_pragma_ms_struct): Declare.
+       * config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS):
+       Register ms_struct pragma.
+       * config/i386/darwin.h (REGISTER_TARGET_PRAGMAS): Declare.
+       (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Ditto.
+       * config/rs6000/rs6000.c (rs6000_set_default_type_attributes): Call
+       darwin_set_default_type_attributes if TARGET_MACHO.
+
+2006-04-27  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/26854
+       * tree-vrp.c (remove_range_assertions): Use new Immuse iterator.
+       * doc/tree-ssa.texi: Update immuse iterator documentation.
+       * tree-ssa-math-opts.c (execute_cse_reciprocals_1): Use new iterator.
+       * tree-ssa-dom.c (propagate_rhs_into_lhs): Use new iterator.
+       * tree-flow-inline.h (end_safe_imm_use_traverse, end_safe_imm_use_p,
+       first_safe_imm_use, next_safe_imm_use): Remove.
+       (end_imm_use_stmt_p): New.  Check for end of immuse stmt traversal.
+       (end_imm_use_stmt_traverse): New.  Terminate immuse stmt traversal.
+       (move_use_after_head): New.  Helper function to sort immuses in a stmt.
+       (link_use_stmts_after): New.  Link all immuses in a stmt consescutively.
+       (first_imm_use_stmt): New.  Get first stmt in an immuse list.
+       (next_imm_use_stmt): New.  Get next stmt in an immuse list.
+       (first_imm_use_on_stmt): New.  Get first immuse on a stmt.
+       (end_imm_use_on_stmt_p): New.  Check for end of immuses on a stmt.
+       (next_imm_use_on_stmt): New.  Move to next immuse on a stmt.
+       * tree-ssa-forwprop.c (forward_propagate_addr_expr): Use new iterator.
+       * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Use new iterator.
+       (perfect_nestify): Use new iterator.
+       * tree-vect-transform.c (vect_create_epilog_for_reduction): Use new
+       iterator.
+       * tree-flow.h (struct immediate_use_iterator_d): Add comments.
+       (next_imm_name): New field in struct immediate_use_iterator_d.
+       (FOR_EACH_IMM_USE_SAFE, BREAK_FROM_SAFE_IMM_USE): Remove.
+       (FOR_EACH_IMM_USE_STMT, BREAK_FROM_IMM_USE_STMT,
+       FOR_EACH_IMM_USE_ON_STMT): New immediate use iterator macros.
+       * tree-cfg.c (replace_uses_by): Use new iterator.
+       * tree-ssa-threadedge.c (lhs_of_dominating_assert): Use new iterator.
+       * tree-ssa-operands.c (correct_use_link): Remove.
+       (finalize_ssa_use_ops): No longer call correct_use_link.
+
+2006-04-27  Stuart Hastings  <stuart@apple.com>
+
+       * config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New.
+       * config/t-darwin (crt3.o): Use it.
+       * config/rs6000/rs6000.c (rs6000_initialize_trampoline): Remove
+       'pmode', use Pmode instead of SImode for SYMBOL_REF.
+       * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv,
+       call_nonlocal_sysv, call_value_indirect_nonlocal_sysv,
+       call_value_nonlocal_sysv): Suffix with the "P" macro for 32/64
+       support.
+
+2006-04-27  Roger Sayle  <roger@eyesopen.com>
+
+       * expmed.c (store_fixed_bit_field): If we're not optimizing for
+       size, force the intermediate into a new pseudo rather instead of
+       performing both a bitwise AND and a bitwise IOR in memory.
+
+2006-04-27  Richard Guenther  <rguenther@suse.de>
+
+       PR rtl-optimization/26685
+       * params.def (PARAM_MAX_CSE_INSNS): Correct typo that named
+       this one "max-flow-memory-locations".
+
+2006-04-27  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/25148
+       * tree-vrp.c (compare_values): Remove code dealing with
+       comparisons against type min/max value.  Honour overflow
+       and negative constants in code dealing with comparisons
+       of plus and minus expressions.
+       (value_inside_range): Use fold_binary with LE_EXPR and
+       GE_EXPR rather than compare_values.
+
+2006-04-27  Dirk Mueller  <dmueller@suse.de>
+
+       * config/i386/xmmintrin.h (_mm_shuffle_pi16): Declare
+       prototype for SSE.
+
+2006-04-26  Kenneth Zadeck <zadeck@naturalbridge.com>
+
+       * basic-block.h (safe_insert_insn_on_edge): Removed.
+       * cfgrtl.c (mark_killed_regs, safe_insert_insn_on_edge): Removed.
+
+
+2006-04-26  David Edelsohn  <edelsohn@gnu.org>
+           Paolo Bonzini  <bonzini@gnu.org>
+
+       PR middle-end/27282
+       * combine.c (simplify_and_const_int_1): Use gen_int_mode.
+       (simplify_and_const_int): Same.
+
+2006-04-26  Aldy Hernandez  <aldyh@redhat.com>
+
+        * tree-ssa-dse.c (dse_optimize_stmt): Remove unused variable USE.
+
+2006-04-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/26171
+       * cgraph.c (cgraph_varpool_finalize_decl): Don't call
+       cgraph_varpool_assemble_pending_decls if -fopenmp, unless
+       cgraph_global_info_ready.
+
+       PR middle-end/26913
+       * tree-cfg.c (find_outermost_region_in_block): Handle RESX_EXPR.
+
+       PR c/25996
+       * c-parser.c (c_parser_omp_for_loop): Don't call c_finish_omp_for if
+       either decl or init is error_mark_node.
+
+       PR middle-end/25989
+       * tree-flow.h (struct omp_region): Add sched_kind.
+       * omp-low.c (expand_parallel_call): Use region->inner->sched_kind
+       instead of extracting omp for data.
+       (expand_omp_for): Save extracted sched_kind.
+
+2006-04-25  Roger Sayle  <roger@eyesopen.com>
+
+       * expmed.c (store_bit_field): Also check whether the bitsize is
+       valid for the machine's "insv" instruction before moving the
+       target into a pseudo for use with the insv.
+       * config/i386/predicates.md (const8_operand): New predicate.
+       * config/i386/i386.md (extv, extzv, insv): Use the new
+       const8_operand predicate where appropriate.
+
+2006-04-25  DJ Delorie  <dj@redhat.com>
+
+       * doc/install.texi (Specific): Clarify that this is not a list of
+       supported hosts or targets.
+
+2006-04-25  Richard Sandiford  <richard@codesourcery.com>
+
+       PR rtl-optimization/26725
+       * cfgrtl.c (rtl_redirect_edge_and_branch_force): Set the source
+       block's BB_DIRTY flag.
+
+2006-04-25  Geoffrey Keating  <geoffk@apple.com>
+
+       * dwarf2out.c (size_of_locs): Don't fill dw_loc_addr if there
+       are no branches.
+
+       * dwarf2asm.c (dw2_asm_output_data): Don't generate RTL just
+       to print an integer.
+
+2006-04-25  David Edelsohn  <edelsohn@gnu.org>
+
+       * varasm.c (align_variable): New function.
+       (get_block_for_decl): Apply align_variable to DECL before
+       calculating section information.
+       (assemble_variable): Split out alignment computation.
+
+2006-04-25  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * expmed.c (store_bit_field): Handle paradoxical subregs on big endian
+       machines.
+
+2006-04-25  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * genmodes.c (make_vector_mode): Allow making VECTOR_MODE_INT of a
+       MODE_PARTIAL_INT mode.
+       * config/bfin/bfin-modes.def: Add V2PDI and V2SI.
+       * config/bfin/bfin.c (print_operand): Add macflag and mac/msu modifiers
+       for CONST_INTs.
+       (hard_regno_mode_ok): V2PDImode is ok for accumulators.
+       * config/bfin/bfin.h (CLASS_MAX_NREGS, HARD_REGNO_NREGS): Handle
+       V2PDImode.
+       * config/bfin/predicates.md (const01_operand, vec_shift_operand):
+       New predicates.
+       * config/bfin/bfin.md (UNSPEC_MUL_WITH_FLAG, UNSPEC_MAC_WITH_FLAG):
+       New constants.
+       (MACFLAG_NONE, MACFLAG_T, MACFLAG_FU, MACFLAG_TFU, MACFLAG_IS,
+       MACFLAG_IU, MACFLAG_W32, MACFLAG_M, MACFLAG_S2RND, MACFLAG_ISS2,
+       MACFLAG_IH): Likewise.
+       (movstricthi_1): Renamed from "*movstricthi".
+       (load_accumulator, load_accumulator_pair, movsi_insv, insv,
+       ssaddsi3, sssubsi3, ssnegsi2, signbitssi2, smaxhi3, sminhi3,
+       abshi2, neghi2, ssneghi2, signbitshi2, movhi_low2high,
+       movhi_high2high, movhi_low2low, movhi_high2low, movhiv2hi_low,
+       movhiv2hi_high, composev2hi, movv2hi_hi, movv2hi_hi_low,
+       movv2hi_hi_high, ssaddhi3, sssubhi3, ssaddv2hi3, sssubv2hi3,
+       addsubv2hi3, subaddv2hi3, ssaddsubv2hi3, sssubaddv2hi3,
+       sublohiv2hi3, subhilov2hi3, sssublohiv2hi3, sssubhilov2hi3,
+       addlohiv2hi3, addhilov2hi3, ssaddlohiv2hi3, ssaddhilov2hi3,
+       mulhisi_ll, mulhisi_lh, mulhisi_hl, mulhisi_hh, ssnegv2hi2,
+       ssashiftv2hi3, ssashifthi3, lshiftv2hi3, lshifthi3, packv2hi,
+       flag_mulhi, flag_mulhisi_parts, flag_machi, flag_machi_acconly,
+       flag_macinithi, flag_macinit1hi, flag_mulv2hi, flag_mulv2hi_parts,
+       flag_macv2hi_parts, flag_macv2hi_parts_acconly,
+       flag_macinitv2hi_parts, flag_macinit1v2hi_parts): New patterns.
+
+       * doc/rtl.texi (ss_ashift): Improve wording.
+
+2006-04-24  Geoffrey Keating  <geoffk@apple.com>
+
+       * dwarf2out.c (verify_marks_clear): New.
+       (prune_unused_types): Call verify_marks_clear initially, not
+       prune_unmark_dies.
+
 2006-04-24  Bernd Schmidt  <bernd.schmidt@analog.com>
 
        * rtl.def (SS_ASHIFT, SS_NEG): New codes.
 2006-04-04  Matthias Klose  <doko@debian.org>
 
        * Makefile.in (unprotoize.o): Same dependencies as for protoize.o.
+       * Makefile.in (s-macro_list): Conform to POSIX rules in single quoted
+       strings.
 
 2006-04-03  Geoffrey Keating  <geoffk@apple.com>