X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=98769b211aa4ca14159f2364fd6b53610b771d9e;hp=1e0d15cc8ec34434d4eccbf5e3e2738bcb313467;hb=ca137f8fcda9446f5a1f86c71525b0435731fd4c;hpb=012db784da9cc1f2c4a0947c4e28f55237c5b73e diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1e0d15cc8ec..98769b211aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,369 @@ +2004-12-15 Jan Beulich + + * mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h. + +2004-12-15 Uros Bizjak + + * 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 + + 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 + + * 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 + + * pa-host.c (MAP_FAILED): Define if not defined. + (pa_gt_pch_use_address): Handle short reads. + +2004-12-14 Richard Henderson + + 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 + + * 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 + + * doc/invoke.texi (IA-64 options): Add existing options that + weren't already listed. + +2004-12-14 Jeff Law + + * tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target + partition to conflict_graph_merge_regs. + +2004-12-14 Uttam Pawar + Janis Johnson + + * rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors + for vector types with invalid component types. + +2004-12-14 Jakub Jelinek + + 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 + + * tree.def, doc/c-tree.texi: Correctly document restrictions on the + shift width. + +2004-12-14 Kazu Hirata + + * expr.h (expand_modifier): Define EXPAND_STACK_PARM as 1. + +2004-12-14 Richard Earnshaw + + 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 + + * tree-gimple.c (get_base_address): Update documentation. + +2004-12-13 Richard Henderson + + PR middle-end/17930 + * passes.c (rest_of_clean_state): Fix computation of + preferred_incoming_stack_boundary. + +2004-12-13 Wolfgang Bangerth + + * reload.h: Remove struct needs and its only use. + +2004-12-13 Roger Sayle + + 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 + + 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 + + * basic-block.h (PROP_POSTRELOAD): Do not include PROP_AUTOINC, we + can never create autoinc insns after reload. + +2004-12-13 Jeff Law + Kazu Hirata + + * 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 + + * xcoffout.c (xcoffout_declare_function): Always strip storage + class encoding. + +2004-12-13 Andrew Pinski + + 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 + + * 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 + + * tree-cfg.c (remove_useless_stmts_cond): Call fold on COND_EXPR_COND. + +2004-12-13 Kazu Hirata + + * 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 + + * config/m32r/t-linux (SHLIB_MAPFILES): Add libgcc-glibc.ver to + the list rather than replacing the existing value. + +2004-12-13 Richard Henderson + + * cfg.c (dump_flow_info): Don't dump pseudo info after reload. + +2004-12-13 Richard Henderson + + * 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 + + 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 + + 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 + + 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 + + * config/i386/i386.c (ix86_gimplify_va_arg): Fix type mismatch + errors across operations. + +2004-12-12 Di-an Jan + + * doc/passes.texi (Pass Manager): Correct list of source files. + +2004-12-12 Richard Henderson + + * expr.c (emit_move_change_mode): New. + (emit_move_via_alt_mode): Use it. + +2004-12-12 Nathanael Nerode + John David Anglin + + 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 + + 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 + + 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 + + * 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 + + * 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 + + * tree-gimple.c (get_base_address): Update documentation. + +2004-12-12 Kazu Hirata + + * lcm.c (optimize_mode_switching): Free ptr even when mode_set + is NULL_RTX. + +2004-12-12 Roger Sayle + + * 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 + + * lcm.c (optimize_mode_switching): Free insert and delete in + the "for" loop. + +2004-12-11 David Edelsohn + Ulrich Weigand + + 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 + + * tree-into-ssa.c (rewrite_ssa_into_ssa): Free SSA_NAME_AUX + before we release an SSA_NAME. + +2004-12-11 Roger Sayle + + 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 + + * 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 + + 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 + + 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 + + * 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 + + * 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 * regmove.c (combine_stack_adjustments_for_block): Free