X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=77796d5674e8a2c6db39abfc73c345be46e55399;hb=fd124612d4476fa88b84aec0907a7137631bdbca;hp=d4289a53b2734cd34384a54f5e97d5419b2197c6;hpb=ed4bf5c95710de5c4c20bd91f2d5dc3e2a777460;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d4289a53b27..77796d5674e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,249 @@ +2008-08-14 Dorit Nuzman + + * tree-vect-transform.c (vect_create_epilog_for_reduction): Takes an + additional argument. Support reduction when duplication is needed due + to data-types of different sizes in the loop. + (get_initial_def_for_induction): Fix printout. + (vect_get_vec_def_for_stmt_copy): Support case where the + vec_stmt_for_operand is a phi node. + (vectorizable_reduction): Support reduction when duplication is needed + due to data-types of different sizes in the loop. + (vectorizable_call): Remove restriction to not vectorize in case we + have data-types of different sizes in the loop. + (vectorizable_conversion): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_type_demotion): Likewise. + (vectorizable_type_promotion): Likewise. + (vectorizable_induction): Add restriction to not vectorize in case + we have data-types of different sizes in the loop. + +2008-08-14 Christophe Saout + Uros Bizjak + + PR target/37101 + * config/i386/sse.md (vec_concatv2di): Remove movlps alternative. + (*vec_concatv2di_rex64_sse4_1): Ditto. + (*vec_concatv2di_rex64_sse): Ditto. + +2008-08-14 Jakub Jelinek + + PR middle-end/37103 + * fold-const.c (fold_widened_comparison): Do not allow + sign changes that change the result even if shorter type + is wider than arg1_unw's type. + +2008-08-13 Kazu Hirata + + * gcc.dg/arm-g2.c, gcc.dg/arm-mmx-1.c, gcc.dg/arm-scd42-2.c: + Skip if the multilib testing specifies -march that does not + agree with the one specified in the testcase. + +2008-08-13 Joseph Myers + + * config/sparc/sparc.c (emit_soft_tfmode_cvt): Explicitly sign or + zero extend SImode values being converted to TFmode before passing + to libcalls. + +2008-08-13 Ulrich Weigand + + * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Predefine + __PPU__ when targeting the Cell/B.E. PPU processor. + +2008-08-13 Eric Botcazou + + * gimple.h (gimple_call_set_chain): Accept SSA variables. + * tree-ssa-pre.c (create_component_ref_by_pieces_1) : + Rematerialize the static chain, if any. + * tree-ssa-sccvn.c (copy_reference_ops_from_call): Also copy the + static chain. + +2008-08-13 H.J. Lu + + * dwarf2out.c (dwarf_stack_op_name): Remove prototype. + (new_loc_descr): Likewise. + (add_loc_descr): Likewise. + (size_of_loc_descr): Likewise. + (size_of_locs): Likewise. + (output_loc_operands): Likewise. + (output_loc_sequence): Likewise. + (new_reg_loc_descr): New. + (build_cfa_loc): Use it. + (build_cfa_aligned_loc): Likewise. + (one_reg_loc_descriptor): Likewise. + (based_loc_descr): Likewise. + +2008-08-13 Manuel Lopez-Ibanez + + PR 30551 + * doc/invoke.texi (Wmain): Update. + * c-decl.c (start_decl): warn_main is only 0 or 1. + (start_function): Likewise. Fix formatting. + (finish_function): Delete redundant warning. + * c.opt (Wmain): Add Var(warn_main) and Init(-1). + * c-opts (c_common_handle_option): -Wall only has effect if + warn_main is uninitialized. OPT_Wmain is automatically + handled. -pedantic also enables Wmain. + (c_common_post_options): Handle all logic for Wmain here. + * c-common.c (warn_main): Delete. + (check_main_parameter_types): Make pedwarns conditional on + OPT_Wmain. + * c-common.h (warn_main): Delete. + +2008-08-13 H.J. Lu + + PR middle-end/36701 + * expr.c (emit_group_store): Allocate stack temp with the + largest alignment when copying from register to stack. + +2008-08-13 Richard Guenther + + * tree.h (maybe_fold_offset_to_address): Declare. + * tree-ssa-ccp.c (surely_varying_stmt_p): Fix typo in last commit. + (ccp_fold): Handle pointer conversions the same as fold_stmt. + Likewise for POINTER_PLUS_EXPR. + (maybe_fold_offset_to_reference): Enable disabled code. + (maybe_fold_offset_to_address): New function. + (fold_stmt_r): Use it. + (fold_gimple_assign): Likewise. + * gimplify.c (gimplify_conversion): Use maybe_fold_offset_to_address. + (gimplify_expr): Likewise. + +2008-08-13 Manuel Lopez-Ibanez + + * toplev.h (pedwarn_at): Fix declaration. + +2008-08-13 Joseph Myers + + * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC, + LINK_SPEC): Use %R in -Y P argument. + +2008-08-13 Manuel Lopez-Ibanez + + PR c/15236 + * diagnostic.c (pedwarn_at): New. + * toplev.h (pedwarn_at): Declare. + * c-tree.h (build_enumerator): Update declaration. + * c-decl.c (finish_enum): Update comment. + (build_enumerator): Take a location parameter. Give a pedwarn but do + not perform any conversion. + * c-parser.c (c_parser_enum_specifier): Set correct location for + enumerator. + +2008-08-13 Manuel Lopez-Ibanez + + PR 35635 + * c-common.c (conversion_warning): Use a switch. Ignore boolean + expressions except for conversions to signed:1 bitfields. Handle + COND_EXPR with constant operands. + +2008-08-13 Richard Guenther + + PR tree-optimization/15255 + * tree-ssa-reassoc.c (linearize_expr_tree): Declare. + (struct oecount_s): New struct and VEC types. + (cvec): New global. + (oecount_hash): New function. + (oecount_eq): Likewise. + (oecount_cmp): Likewise. + (zero_one_operation): New function. + (build_and_add_sum): Likewise. + (undistribute_ops_list): Perform un-distribution of multiplication + and division on the chain of summands. + (should_break_up_subtract): Also break up subtracts for factors. + (reassociate_bb): Delete dead visited statements. + Call undistribute_ops_list. Re-sort and optimize if it did something. + * passes.c (init_optimization_passes): Move DSE before + reassociation. + * tree-ssa-loop-niter.c (stmt_dominates_stmt_p): Correctly handle + PHI nodes. + +2008-08-12 Janis Johnson + + * doc/invoke.texi (-fipa-pta): Say the option is experimental. + + * doc/invoke.texi: Revert unintended checkin. + +2008-08-12 Nathan Froyd + + PR libgomp/26165 + * gcc.c (include_spec_function): Tweak call to find_a_file. + +2008-08-12 Jakub Jelinek + + PR middle-end/37014 + * expr.c (expand_expr_real_1): Handle TRUTH_ANDIF_EXPR + and TRUTH_ORIF_EXPR. + * dojump.c (do_jump): Likewise. + + PR tree-optimization/37084 + * tree-inline.c (copy_bb): Call gimple_regimplify_operands + if id->regimplify, don't assume stmt is a cast assignment. + +2008-08-12 Anatoly Sokolov + + * final.c (final_scan_insn): Use app_enable/app_disable functions. + +2008-08-12 Ulrich Weigand + + PR bootstrap/37097 + * builtins.c (do_mpfr_bessel_n): Fix copy-and-paste bug introduced + by last change. + +2008-08-12 Ulrich Weigand + + * defaults.h (TARGET_FLOAT_FORMAT): Remove. + (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT): Remove. + + * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Remove. + * config/iq2000/iq2000.h (TARGET_FLOAT_FORMAT): Remove. + * config/pdp11/pdp11.h (TARGET_FLOAT_FORMAT): Remove. + * config/score/score.h (TARGET_FLOAT_FORMAT): Remove. + * config/vax/vax.h (TARGET_FLOAT_FORMAT): Remove. + + * doc/tm.texi (Storage Layout): Remove documentation for + TARGET_FLOAT_FORMAT. + + * simplify-rtx.c (simplify_binary_operation_1): Replace + TARGET_FLOAT_FORMAT check by appropriate HONOR_... checks. + +2008-08-12 Ulrich Weigand + + * real.h (struct real_format): New member has_sign_dependent_rounding. + * real.c (ieee_single_format, mips_single_format, motorola_single_format, + spu_single_format, ieee_double_format, mips_double_format, + motorola_double_format, ieee_extended_motorola_format, + ieee_extended_intel_96_format, ieee_extended_intel_128_format, + ieee_extended_intel_96_round_53_format, ibm_extended_format, + mips_extended_format, ieee_quad_format, mips_quad_format, + vax_f_format, vax_d_format, vax_g_format): Initialize it. + * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise. + + * defaults.h (MODE_HAS_NANS, MODE_HAS_INFINITIES, + MODE_HAS_SIGNED_ZEROS, MODE_HAS_SIGN_DEPENDENT_ROUNDING): Remove. + * config/spu/spu.h (MODE_HAS_NANS, MODE_HAS_INFINITIES, + MODE_HAS_SIGN_DEPENDENT_ROUNDING): Remove. + (ROUND_TOWARDS_ZERO): Likewise. + + * real.h (REAL_MODE_FORMAT): Protect MODE against macro expansion. + (FLOAT_MODE_FORMAT): New macro. + (REAL_MODE_FORMAT_COMPOSITE_P): Remove, replace by ... + (MODE_COMPOSITE_P): ... this new macro. + (MODE_HAS_NANS, MODE_HAS_INFINITIES, MODE_HAS_SIGNED_ZEROS, + MODE_HAS_SIGN_DEPENDENT_ROUNDING): New macros. + * machmode.h (GET_MODE_INNER): Cast result to enum machine_mode. + + * flags.h: Include "real.h". + + * fold-const.c (const_binop): Use MODE_COMPOSITE_P instead of + REAL_MODE_FORMAT_COMPOSITE_P. + * simplify-rtx.c (simplify_const_binary_operation): Likewise. + + * doc/tm.texi (Storage Layout): Remove documentation of + MODE_HAS_NANS, MODE_HAS_INFINITIES, MODE_HAS_SIGNED_ZEROS, + MODE_HAS_SIGN_DEPENDENT_ROUNDING. Update documentation of + ROUND_TOWARDS_ZERO and LARGEST_EXPONENT_IS_NORMAL to clarify + they only apply to libgcc2.a. + 2008-08-12 Ulrich Weigand * config/spu/float_disf.c: New file. @@ -465,8 +711,8 @@ 2008-08-07 Bob Wilson - * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Copy incoming value - in a6 after the set_frame_ptr insn. + * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Copy incoming + value in a6 after the set_frame_ptr insn. 2008-08-07 Richard Henderson @@ -554,7 +800,7 @@ * matrix-reorg.c (compute_offset): Avoid C++ keywords. 2008-08-06 Manuel Lopez-Ibanez - + PR 26785 * diagnostic.c (permerror_at): New. * toplev.h (permerror_at): Declare.