OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 1579cb3..98769b2 100644 (file)
@@ -1,5 +1,609 @@
+2004-12-15 Jan Beulich  <jbeulich@novell.com>
+
+       * mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.
+
+2004-12-15  Uros Bizjak  <uros@kss-loka.si>
+
+       * config/i386/i386.md (floathisf2, *floathisf2_1, floatsisf2,
+       *floatsisf2_i387, *floatsisf2_sse, floatdisf2,
+       *floatdisf2_i387_only, *floatdisf2_i387, *floatdisf2_sse,
+       floathidf2, *floathidf2_1, *floatsidf2_i387, *floatsidf2_sse,
+       floatdidf2, *floatdidf2_i387_only, *floatdidf2_i387,
+       *floatdidf2_sse, floatunssisf2, floatunsdisf2, floatunsdidf2):
+       Unify enable constraint with respect to TARGET_80387, TARGET_SSE,
+       TARGET_SSE2, TARGET_64BIT, TARGET_SSE_MATH and TARGET_MIX_SSE_I387.
+       (*float?i?f_i387): Rename to *float?i?f2_mixed.
+       (*float?i?f2_1): Rename to *float?i?f2_i387.
+       (*float?i?f2_i387_only): Rename to *float?i?f2_i387.
+       (float?ixf2): Penalize integer register operand.
+
+2004-12-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR c++/17242
+       * configure.ac: Add GAS check for HP-UX .nsubspa comdat.
+       * configure, config.in: Rebuilt.
+       * config/pa/pa-hpux10.h (SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Delete
+       defines.
+       * config/pa/pa.c (pa_select_section): Allow uninitialized variables in
+       one-only (comdat) subspaces.
+       * config/pa/som.h (SUPPORTS_SOM_COMDAT): New define.
+       (SUPPORTS_ONE_ONLY): True if SUPPORTS_WEAK or SUPPORTS_SOM_COMDAT are
+       true.
+       (MAKE_DECL_ONE_ONLY): Place uninitialized variables in common.
+
+2004-12-14  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * combine.c (combine_validate_cost): Consider cost of
+       undobuf.other_insn rather than always allowing the recombination
+       if it is set.
+
+2004-12-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa-host.c (MAP_FAILED): Define if not defined.
+       (pa_gt_pch_use_address): Handle short reads.
+
+2004-12-14  Richard Henderson  <rth@redhat.com>
+
+       PR target/17990
+       * config/i386/i386.c (x86_use_bt): New.
+       (ix86_expand_unary_operator): Use MEM_P.
+       (ix86_expand_fp_absneg_operator): New.
+       * config/i386/i386.h (x86_use_bt): Declare.
+       (TARGET_USE_BT): New.
+       * config/i386/i386-protos.h: Update.
+       * config/i386/i386.md (negsf2): Use ix86_expand_fp_absneg_operator.
+       (negdf2, negxf2, abssf2, absdf2, absxf2): Likewise.
+       (negsf2_memory, negsf2_ifs, negsf2_if, negdf2_memory, negdf2_ifs,
+       negdf2_ifs_rex64, negdf2_if, negdf2_if_rex64, negxf2_if,
+       abssf2_memory, abssf2_ifs, abssf2_if, absdf2_memory, absdf2_ifs,
+       absdf2_ifs_rex64, absdf2_if, absxf2_if): Remove.
+       (absnegsf2_mixed, absnegsf2_sse, absnegsf2_i387, absnegdf2_mixed,
+       absnegdf2_sse, absnegdf2_i387, absnegxf2_i387): New.  Merge all
+       neg and abs splitters.  Handle DFmode in general regs in 64-bit mode.
+       (negextendsfdf2, absextendsfdf2): Disable for non-mixed sse math.
+       (btsq, btrq, btcq): New.  Add peepholes as well.
+       (movv4sf_internal splitter): Postpone til after reload.
+       (movv2di_internal splitter): Likewise.
+       * config/i386/predicates.md (const_0_to_63_operand): New.
+       (absneg_operator): New.
+
+2004-12-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa.h (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P):
+       Check register number and that reg_renumber is nonzero before using it.
+
+2004-12-14  Steve Ellcey  <sje@cup.hp.com>
+
+       * doc/invoke.texi (IA-64 options): Add existing options that
+       weren't already listed.
+
+2004-12-14  Jeff Law  <law@redhat.com>
+
+       * tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target
+       partition to conflict_graph_merge_regs.
+
+2004-12-14  Uttam Pawar  <uttamp@us.ibm.com>
+           Janis Johnson  <janis187@us.ibm.com>
+
+       * rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors
+       for vector types with invalid component types.
+
+2004-12-14  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/18951
+       * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2,
+       expand_builtin_mathfn_3): Avoid using arguments passed to
+       save_expr after that call.
+
+       * fold-const.c (fold_single_bit_test): If flag_syntax_only, pretend
+       LOAD_EXTEND_OP is not defined.
+       (fold): Likewise.  If flag_syntax_only, don't depend on BITS_PER_WORD.
+
+2004-12-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * tree.def, doc/c-tree.texi: Correctly document restrictions on the
+       shift width.
+
+2004-12-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.h (expand_modifier): Define EXPAND_STACK_PARM as 1.
+
+2004-12-14  Richard Earnshaw  <rearnsha@arm.com>
+
+       PR target/18973
+       arm-cores.def (arm926ej-s, arm1026ej-s, arm1136j-s, arm1136-jfs)
+       (arm1176jz-s, arm1176jzf-s, mpcorenovfp, mpcore): Add load-scheduling
+       property to flags.
+
+2004-12-14  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-gimple.c (get_base_address): Update documentation.
+
+2004-12-13  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/17930
+       * passes.c (rest_of_clean_state): Fix computation of
+       preferred_incoming_stack_boundary.
+
+2004-12-13  Wolfgang Bangerth <bangerth@dealii.org>
+
+       * reload.h: Remove struct needs and its only use.
+
+2004-12-13  Roger Sayle  <roger@eyesopen.com>
+
+       PR rtl-optimization/18928
+       * simplify_rtx.c (plus_minus_operand_p): New function to encode
+       the test for suitable operands for calls to simplify_plus_minus.
+       Only allow (CONST (PLUS x y)) if both x and y are CONSTANT_P.
+       (simplify_binary_operation): Use plus_minus_operand_p.
+
+2004-12-13  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR tree-opt/16951
+       * tree-inline.c (setup_one_parameter): Don't directly map a
+       parameter to the address of another variable of the same
+       function.
+
+2004-13-12  Steven Bosscher  <stevenb@suse.de>
+
+       * basic-block.h (PROP_POSTRELOAD): Do not include PROP_AUTOINC, we
+       can never create autoinc insns after reload.
+
+2004-12-13  Jeff Law  <law@redhat.com>
+           Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-dom.c (thread_across_edge): Do not thread jumps if a
+       PHI argument is set from a PHI_RESULT in the same block and the
+       PHI argument is not the same as the PHI result.
+
+2004-12-13  David Edelsohn  <edelsohn@gnu.org>
+
+       * xcoffout.c (xcoffout_declare_function): Always strip storage
+       class encoding.
+
+2004-12-13  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR target/18964
+       * config/darwin.c (darwin_assemble_visibility): Fix minor diagnostic
+       problem, adding a space at the end of the string before concatenation.
+
+2004-12-13  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * c-common.c (fname_as_string): Free namep if we are returning
+       cstr.text.
+
+       * tree-ssa-dom.c (record_edge_info): Fix memory leak.
+
+2004-12-13  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * tree-cfg.c (remove_useless_stmts_cond): Call fold on COND_EXPR_COND.
+
+2004-12-13  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-ssa-dom.c (record_equivalences_from_phis): Speed up by
+       doing a pointer comparison.
+
+       * tree-ssa-dom.c (record_equivalences_from_phis): Add a
+       comment.
+
+       * defaults.h, stmt.c, tree-cfg.c, tree-ssa-dce.c: Fix comment
+       typos.
+
+2004-12-13  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+       * config/m32r/t-linux (SHLIB_MAPFILES): Add libgcc-glibc.ver to
+       the list rather than replacing the existing value.
+
+2004-12-13  Richard Henderson  <rth@redhat.com>
+
+       * cfg.c (dump_flow_info): Don't dump pseudo info after reload.
+
+2004-12-13  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (insn-preds.o): Depend on REGS_H.
+       * genpreds.c (write_insn_preds_c): Include regs.h.
+       * config/i386/predicates.md (index_register_operand): Use
+       REG_OK_FOR_INDEX_STRICT_P and REG_OK_FOR_INDEX_NONSTRICT_P.
+
+       * config/i386/i386.h (REG_CLASS_FROM_LETTER): Add 'l'.
+       * config/i386/i386.md (lea_general_1, lea_general_1_zext,
+       lea_general_2, lea_general_2_zext, lea_general_3, lea_general_3_zext,
+       adddi_1_rex64, addsi_1, addsi_1_zext, addhi_1_lea, addqi_1_lea,
+       ashldi3_1_rex64, ashlsi3_1, ashlsi3_1_zext, ashlhi3_1_lea,
+       ashlqi3_1_lea): Use 'l' for index register operand.
+       (ashldi3_1_rex64 splitter): Use index_register_operand.
+       (ashlsi3_1 splitter): Be more careful with modes.
+
+2004-12-13  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/18459
+       * defaults.h (TARGET_USE_JCR_SECTION): New macro.
+       * doc/tm.texi (TARGET_USE_JCR_SECTION): Document it.
+       * config/i386/cygming.h (TARGET_USE_JCR_SECTION): Override
+       default.
+
+2004-12-13 Uros Bizjak <uros@kss-loka.si>
+
+       PR target/14941
+       PR target/18503
+       * config/i386/i386.md (sse_movss, sse2_movsd, sse2_movhpd):
+       Fix wrong vec_merge selector bitmask.
+
+2004-12-12  Richard Henderson  <rth@redhat.com>
+
+       PR rtl-opt/17186
+       * reg-stack.c (move_nan_for_stack_reg): New.
+       (subst_stack_regs_pat): Use it.
+       (move_for_stack_reg): Handle source register not live with a nan.
+
+2004-12-12  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.c (ix86_gimplify_va_arg): Fix type mismatch
+       errors across operations.
+
+2004-12-12  Di-an Jan  <dianj@freeshell.org>  
+
+       * doc/passes.texi (Pass Manager): Correct list of source files.
+
+2004-12-12  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (emit_move_change_mode): New.
+       (emit_move_via_alt_mode): Use it.
+
+2004-12-12  Nathanael Nerode  <neroden@gcc.gnu.org>
+           John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/17564
+       * dojump.c (do_compare_and_jump): Only canonicalize function pointers
+       in a comparison if both sides are function pointers.
+
+2004-12-12  Richard Henderson  <rth@redhat.com>
+
+       PR target/18932
+       * config/i386/i386.md (all splits and peepholes): Use flags_reg_operand
+       and compare_operator to propagate the input CC mode to the output.
+       * config/i386/predicates.md (compare_operator): New.
+
+2004-12-12  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/18040
+       * expr.c (get_inner_reference): Remove NON_LVALUE_EXPR, NOP_EXPR,
+       CONVERT_EXPR cases.
+       (handled_component_p): Likewise.
+
+2004-12-12  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * reg-stack.c (convert_regs_2): Free stack.
+
+       * tree-ssa-dom.c (thread_across_edge, dom_opt_finalize_block): Fix
+       comment typos.
+
+2004-12-12  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null.
+       * tree-ssa-loop-im.c (determine_lsm): tree_root may not have a real
+       inner loop.
+
+2004-12-12  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-gimple.c (get_base_address): Update documentation.
+
+2004-12-12  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * lcm.c (optimize_mode_switching): Free ptr even when mode_set
+       is NULL_RTX.
+
+2004-12-12  Roger Sayle  <roger@eyesopen.com>
+
+       * reg-stack.c (change_stack): Avoid placing the new top-of-stack in
+       its correct location during popping if we need to permute the stack
+       afterwards.  Attempt to preserve the original stack ordering.
+
+2004-12-12  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * lcm.c (optimize_mode_switching): Free insert and delete in
+       the "for" loop.
+
+2004-12-11  David Edelsohn  <edelsohn@gnu.org>
+           Ulrich Weigand  <uweigand@de.ibm.com>
+
+       PR target/18641
+       * config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Reload all
+       constants into all register classes intersecting with FLOAT_REGS
+       via memory.
+       * config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): Same.
+       * config/rs6000/rs6000.md (movdi_internal32): Ignore FPRs when
+       choosing register preferences.
+       (movdi_internal64): Same.
+
+2004-12-11  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-into-ssa.c (rewrite_ssa_into_ssa): Free SSA_NAME_AUX
+       before we release an SSA_NAME.
+
+2004-12-11  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/18921
+       * fold-const.c (fold_unwidened_comparison): Use omit_one_operand
+       instead of constant_boolean_node as arg0 may have side-effects.
+
+2004-12-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa-host.c (pa_gt_pch_use_address): Use lseek and read to copy PCH
+       file to anonymous private map.
+
+2004-12-10  Roger Sayle  <roger@eyesopen.com>
+
+       PR target/18002
+       PR middle-end/18424
+       * dojump.c (do_jump): When attempting to reverse the effects of
+       fold_single_bit_test, we need to STRIP_NOPS and narrowing type
+       conversions, and handle BIT_XOR_EXPR that's used to invert the
+       sense of the single bit test.
+
+2004-12-10  Devang Patel  <dpatel@apple.com>
+
+       PR 18732
+       * gcc.c (main): Do not break out of loop when error is reported while
+       processing one source file.
+       
+2004-12-10  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-into-ssa.c (REWRITE_THIS_STMT): Define.
+       (mark_def_sites): Clear REWRITE_THIS_STMT for statements that
+       don't need any operands rewritten.
+       (rewrite_stmt): Ignore statements that don't need to be
+       rewritten.
+       (rewrite_operand): Validate that an existing SSA_NAME is
+       identical to the current reaching definition of the operand.
+
+2004-12-10  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-dfa.c (mark_call_clobbered_vars_to_rename): New function.
+       * tree-vectorizer.c (vectorizable_load): Call it.
+       * tree-flow.h (mark_call_clobbered_vars_to_rename): Declare.
+       * tree-sra.c (mark_all_v_defs): Also mark VUSEs for renaming.
+
+2004-12-10  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * regmove.c (combine_stack_adjustments_for_block): Free
+       memlist if it hasn't been freed.
+
+2004-12-10  Ziemowit Laski  <zlaski@apple.com>
+
+       * c-typeck.c (lookup_field): Check if a TYPE_LANG_SPECIFIC
+       pointer field is set before dereferencing it.
+
+2004-12-10  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/18903
+       * tree-cfg.c (remove_bb): Put the moved label at the beginning
+       of the basic block.
+
+2004-12-10  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-data-ref.c (free_data_refs): Free each data_reference
+       object.
+
+       * tree-ssa-dom.c (thread_across_edge): Speed up by avoiding a
+       call to is_gimple_min_invariant if we know the result.
+
+2004-12-10  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-alias.c (setup_pointers_and_addressables): Remove
+       redundant test of v_ann->mem_tag_kind.
+
+       * tree-ssa-operands.c (get_indirect_ref_operands): Remove
+       redundant conditional clearing opf_kill_def.
+
+2004-12-10  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/frv/frv-modes.def: Fix comment typos.
+       (CC_NZ): Define new mode.
+       * config/frv/frv-protos.h (frv_select_cc_mode): Declare.
+       (condexec_intop_cmp_operator): Delete.
+       * config/frv/frv.c (comparison_string): New function.
+       (frv_print_operand): Use it to handle 'c' and 'C'.
+       (relational_operator): Redefine in terms of integer_relational_operator
+       and float_relational_operator.
+       (signed_relational_operator, unsigned_relational_operator): Delete.
+       (integer_relational_operator): New predicate, combining the above.
+       Check the mode of the first operand but leave frv.md to check the rest.
+       (float_relational_operator): Just check the mode of the first operand
+       and leave frv.md to check the rest.
+       (intop_compare_operator): Assume the result is compared with zero
+       in mode CC_NZmode.  Allow PLUS and MINUS.  Leave frv.md to check
+       the operand predicates.
+       (condexec_intop_cmp_operator): Delete.
+       (frv_ifcvt_modify_tests, frv_ifcvt_modify_multiple_tests)
+       (frv_hard_regno_mode_ok): Handle CC_NZmode.
+       (frv_select_cc_mode): New function.
+       * config/frv/frv.h (SELECT_CC_MODE): Use frv_select_cc_mode.
+       (REVERSIBLE_CC_MODE): Include CC_NZmode.
+       (PREDICATE_CODES): Replace entries for signed_relational_operand and
+       unsigned_relational_operator with one for integer_relational_operator.
+       Delete entry for condexec_intop_cmp_operator.
+       * config/frv/frv.md (movcc_nz, *internal_movcc_nz, reload_incc_nz)
+       (reload_outcc_nz, *cmpsi_cc_nz, *cond_exec_cmpsi_cc_nz): New patterns.
+       (*combo_intop_compare2, *combo_intop_compare4): Delete.
+       (*combo_intop_compare1): Change mode to CC_NZ.
+       (*combo_intop_compare2): Likewise.  Renamed from *combo_intop_compare3.
+       (branch_{un,}signed_true, branch_{un,}signed_false)
+       (*scc_{un,}signed, *scc_neg1_{un,}signed, *ck_{un,}signed)
+       (*movqicc_internal1_{un,}signed, *movqicc_internal2_{un,}signed)
+       (*movhicc_internal1_{un,}signed, *movhicc_internal2_{un,}signed)
+       (*movsicc_internal1_{un,}signed, *movsicc_internal2_{un,}signed)
+       (*movsfcc_has_fprs_{un,}signed, *movsfcc_no_fprs_{un,}signed)
+       (*return_{unsigned_,}true, *return_{unsigned_,}false): Merge these
+       pattern pairs.  Use integer_relational_operator.  Remove mode from
+       icc_operand.
+
+2004-12-10  Mark Dettinger  <dettinge@de.ibm.com>
+
+       * config/s390/s390.c (struct processor_costs): New fields ml,
+       sqdbr, sqebr.
+       (s390_rtx_costs): Added the missing handling of multiply & add,
+       square root, and umulsidi.
+
+2004-12-10  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expmed.c (synth_mult): Initialize new_limit.latency before
+       making a recursive call.
+
+2004-12-10  Nick Clifton  <nickc@redhat.com>
+
+       * config/mn10300/mn10300.c (legitimate_address_p): Reject address
+       whose index is itself the sum of two other parts.
+
+2004-12-10  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/t-slibgcc-sld (SHLIB_LINK): Correct symlink.
+
+2004-12-10  Uros Bizjak  <uros@kss-loka.si>
+
+       * config/i386/i386.md (*cmpfp_sf): Change type attribute to "multi".
+
+2004-12-09  Richard Henderson  <rth@redhat.com>
+
+       PR c/18282
+       * attribs.c (decl_attributes): Use relayout_decl.
+       * c-common.c (handle_mode_attribute): Copy all relevant type
+       parameters from the new underlying integral type.
+
+2004-12-09  Richard Henderson  <rth@redhat.com>
+
+       * c-common.c (shorten_compare): Don't special-case min/maxval
+       for C enumerations.
+
+2004-12-09  Richard Sandiford  <rsandifo@redhat.com>
+
+       * simplify-rtx.c (simplify_subreg): In the CONCAT case, check whether
+       the request subreg is entirely contained in the requested component.
+       (simplify_gen_subreg): Return null for CONCATs that are rejected
+       by simplify_subreg.
+       * expmed.c (store_bit_field): Create a temporary when changing the
+       value to an integer mode.
+
+2004-12-09  David Edelsohn  <edelsohn@gnu.org>
+
+       * real.c (ibm_extended): Correct comment.
+
+2004-12-09  Stan Shebs  <shebs@apple.com>
+
+       * config/rs6000/darwin-asm.h: New file, 32/64-bit assembly macros
+       formerly in darwin-tramp.asm.
+       * config/rs6000/darwin-tramp.asm: Include darwin-asm.h.
+       * config/rs6000/darwin-fpsave.asm: Use 32/64-bit macros.
+       * config/rs6000/t-darwin: Add dependencies.
+
+2004-12-09  Richard Henderson  <rth@redhat.com>
+
+       PR target/17025
+       * config/i386/i386.md (testqi_1_maybe_si, andqi_2_maybe_si): New.
+       (test_qi_1, andqi_2): Do not promote to simode.
+
+2004-12-09  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/18904
+       * tree-chrec.c (chrec_convert): Use fold_convert
+       instead of convert.
+
+2004-12-09  Matt Rice  <ratmice@yahoo.com>
+
+       PR preprocessor/18102
+       * c-incpath.c (remove_duplicates): Check for construct
+       equality.
+
+2004-12-09  Dorit Naishlos  <dorit@il.ibm.com>
+
+       * genopinit.c (vec_realign_store_optab): Initialization removed.
+       * optabs.c (optab_for_tree_code): REALIGN_STORE_EXPR case removed.
+       * optabs.h (optab_index): OTI_vec_realign_store Removed.
+       (vec_realign_store_optab): Removed.
+       * target-def.h (TARGET_VECTORIZE_BUILTIN_MASK_FOR_STORE): Removed.
+       * target.h (builtin_mask_for_store): Removed.
+       * tree.def (REALIGN_STORE_EXPR): Removed.
+       * config/rs6000/rs6000.c (rs6000_builtin_mask_for_store): Removed.
+       (altivec_builtin_mask_for_store): Removed.
+       (altivec_init_builtins): Removed initialization of
+       altivec_builtin_mask_for_store.
+
+       * doc/tm.texi (TARGET_VECTORIZE_MISALIGNED_MEM_OK): New.
+       (TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD): New.
+
+2004-12-09  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * tree.def (SET_TYPE): Remove.
+       (CONSTRUCTOR): Update description.
+       * builtins.c (type_to_class) Remove SET_TYPE case.
+       * dbxout.c (dbxout_type): Likewise.
+       * dwarf2out.c (is_base_type): Likewise.
+       (gen_set_type_die): Remove.
+       (gen_type_die): Remove SET_TYPE case.
+       * expr.c (count_type_elements): Likewise.
+       (mostly_zeroes_p): Likewise.
+       (store_constructor): Likewise.
+       * print_tree.c (print_node): Likewise.
+       * stor-layout.c (layout_type): Likewise.
+       * tree-browser.c (browse_tree): Likewise.
+       * tree-inline.c (remap_type): Likewise.
+       * tree-pretty-print.c (dump_generic_node): Likewise.
+       * tree.c (type_contains_plaeholder_1, type_hash_eq,
+       variably_modified_type_p, initializer_zerop): Likewise.
+       * tree.h (SET_OR_ARRAY_CHECK): Remove.
+       (AGGREGATE_TYPE_P): Remove SET_TYPE check.
+       (TYPE_DOMAIN): Use ARRAY_TYPE_CHECK.
+       * typeclass.h (enum type_class): Remove set_type_class.
+       * varasm.c (const_hash_1): Remove SET_TYPE case.
+       (compare_constant, copy_constant, output_constant): Likewise.
+       * config/i386/i386.c (classify_argument): Likewise.
+       * config/ia64/ia64.c (hfa_element_mode): Likewise.
+       * config/sparc/sparc.c (sparc_type_code): Likewise.
+
+       PR c++/16681
+       * tree-inline.c (estimate_num_insns_1): Add RANGE_EXPR case.
+
+2004-12-08  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.md: Use FLAGS_REG everywhere.
+
+2004-12-08  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.c (mips_scalar_mode_supported_p): Rewrite
+       to avoid call to default function.
+
+2004-12-08  Zack Weinberg  <zack@codesourcery.com>
+
+       PR 17982
+       * varasm.c (pending_assemble_externals): New static.
+       (assemble_external_real): Meat of assemble_external split out
+       to this new function.
+       (process_pending_assemble_externals): New function.
+       (assemble_external): Use gcc_assert.  If flag_unit_at_a_time
+       is true and the basic test passes, merely cons the decl onto
+       the pending list to be handled later.
+       * tree.h: Declare process_pending_assemble_externals.
+       * cgraphunit.c (cgraph_optimize): Call it.
+
+       * config/h8300/h8300.h: Do not define ASM_OUTPUT_EXTERNAL.
+
+2004-12-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * cfgloopmanip.c (create_preheader): Speed up by "unrolling"
+       and simplifying FOR_EACH_EDGE.
+
+2004-12-08  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/frv/frv.c (frv_sort_insn_group): Always initialize
+       packet_group->nop.
+
 2004-12-08  Nathan Sidwell  <nathan@codesourcery.com>
 
+       PR c++/18672
+       * gimplify.c (canonicalize_addr_expr): Cope with array of
+       incomplete type.
+       (gimplify_conversion): Remove redundant checks.
+
        * doc/trouble.texi (Non-bugs): Clarify empty loop removal.
 
 2004-12-08  Uros Bizjak  <uros@kss-loka.si>
 
 2004-12-07  David Mosberger  <davidm@hpl.hp.com>
 
-        PR target/18443
-        * config/ia64/ia64.c (ia64_assemble_integer): Add support for
-        emitting unaligned pointer-sized integers.
+       PR target/18443
+       * config/ia64/ia64.c (ia64_assemble_integer): Add support for
+       emitting unaligned pointer-sized integers.
 
 2004-12-07  Steven Bosscher  <stevenb@suse.de>