+2011-08-18 Richard Guenther <rguenther@suse.de>
+
+ * tree.h (tree_int_cst_msb): Remove.
+ * tree.c (tree_int_cst_msb): Likewise.
+ (tree_int_cst_sign_bit): Move from ...
+ * tree-ssa-loop-ivopts.c (tree_int_cst_sign_bit): ... here.
+
+2011-08-18 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * doc/tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
+ * doc/tm.texi: Regenerate.
+ * target.def (rtx_costs): Add an opno parameter.
+ * hooks.h (hook_bool_rtx_int_int_intp_bool_false): Replace with...
+ (hook_bool_rtx_int_int_int_intp_bool_false): ...this.
+ * hooks.c (hook_bool_rtx_int_int_intp_bool_false): Replace with...
+ (hook_bool_rtx_int_int_int_intp_bool_false): ...this.
+ * cse.c (COST_IN): Add an opno parameter.
+ (notreg_cost): Likewise. Update call to rtx_cost.
+ (COST, fold_rtx): Update accordingly.
+ * dojump.c (prefer_and_bit_test): Update call to rtx_cost.
+ * expmed.c (emit_store_flag): Likewise.
+ * optabs.c (avoid_expensive_constant): Add an opno parameter.
+ Update call to rtx_cost.
+ (expand_binop_directly, expand_binop): Likewise.
+ (expand_twoval_binop, prepare_cmp_insn): Likewise.
+ * rtl.h (rtx_cost, get_full_rtx_cost): Add opno parameters.
+ (set_src_cost, get_full_set_src_cost): Update accordingly.
+ * rtlanal.c (rtx_cost): Add an opno parameter. Update call
+ to target hook.
+ (get_full_rtx_cost): Add an opno paramter. Update calls to rtx_cost.
+ (default_adress_cost): Update calls to rtx_cost.
+
+ * config/arm/arm.c (arm_rtx_costs_1, arm_size_rtx_costs)
+ (arm_slowmul_rtx_costs): Adjust calls to rtx_cost.
+ (arm_rtx_costs): Add an opno parameter.
+ * config/alpha/alpha.c (alpha_rtx_costs): Add an opno parameter and
+ adjust any recursive rtx-cost calls.
+ * config/avr/avr.c (avr_operand_rtx_cost, avr_rtx_costs): Likewise.
+ * config/bfin/bfin.c (bfin_rtx_costs): Likewise.
+ * config/c6x/c6x.c (c6x_rtx_costs): Likewise.
+ * config/cris/cris.c (cris_rtx_costs): Likewise.
+ * config/frv/frv.c (frv_rtx_costs): Likewise.
+ * config/h8300/h8300.c (h8300_rtx_costs): Likewise.
+ * config/i386/i386.c (ix86_rtx_costs): Likewise.
+ * config/ia64/ia64.c (ia64_rtx_costs): Likewise.
+ * config/iq2000/iq2000.c (iq2000_rtx_costs): Likewise.
+ * config/lm32/lm32.c (lm32_rtx_costs): Likewise.
+ * config/m32c/m32c.c (m32c_rtx_costs): Likewise.
+ * config/m32r/m32r.c (m32r_rtx_costs): Likewise.
+ * config/m68k/m68k.c (m68k_rtx_costs): Likewise.
+ * config/mcore/mcore.c (mcore_rtx_costs): Likewise.
+ * config/mep/mep.c (mep_rtx_cost): Likewise.
+ * config/microblaze/microblaze.c (microblaze_rtx_costs): Likewise.
+ * config/mips/mips.c (mips_binary_cost): Update call to rtx_cost.
+ (mips_zero_extend_cost): Add an opno parameter.
+ * config/mmix/mmix.c (mmix_rtx_costs): Likewise.
+ * config/mn10300/mn10300.c (mn10300_address_cost): Update call
+ to rtx_cost.
+ (mn10300_rtx_costs): Add an opno parameter and adjust any recursive
+ rtx-cost calls.
+ * config/pa/pa.c (hppa_rtx_costs): Likewise.
+ * config/pdp11/pdp11.c (pdp11_rtx_costs): Likewise.
+ * config/picochip/picochip.c (picochip_rtx_costs): Likewise.
+ * config/rs6000/rs6000.c (rs6000_rtx_costs): Likewise.
+ (rs6000_debug_rtx_costs): Likewise.
+ * config/s390/s390.c (s390_rtx_costs): Likewise.
+ * config/score/score-protos.h (score_rtx_costs): Likewise.
+ * config/score/score.c (score_rtx_costs): Likewise.
+ * config/sh/sh.c (andcosts): Update call to rtx_cost.
+ (sh_rtx_costs): Add an opno parameter.
+ * config/sparc/sparc.c (sparc_rtx_costs): Likewise.
+ * config/spu/spu.c (spu_rtx_costs): Likewise.
+ * config/stormy16/stormy16.c (xstormy16_rtx_costs): Likewise.
+ * config/v850/v850.c (v850_rtx_costs): Likewise.
+ * config/vax/vax.c (vax_rtx_costs): Likewise.
+ * config/xtensa/xtensa.c (xtensa_rtx_costs): Likewise.
+
+2011-08-18 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * rtl.h (set_src_cost, get_full_set_src_cost): New functions.
+ * auto-inc-dec.c (attempt_change): Use set_src_cost instead of
+ rtx_cost.
+ * calls.c (precompute_register_parameters): Likewise.
+ * combine.c (expand_compound_operation, make_extraction): Likewise.
+ (force_to_mode, distribute_and_simplify_rtx): Likewise.
+ * dse.c (find_shift_sequence): Likewise.
+ * expmed.c (init_expmed, expand_mult, expand_smod_pow2): Likewise.
+ * expr.c (compress_float_constant): Likewise.
+ * fwprop.c (should_replace_address, try_fwprop_subst): Likewise.
+ * gcse.c (want_to_gcse_p): Likewise.
+ * ifcvt.c (noce_try_sign_mask): Likewise.
+ * loop-doloop.c (doloop_optimize): Likewise.
+ * loop-invariant.c (create_new_invariant): Likewise.
+ * optabs.c (avoid_expensive_constant): Likewise.
+ * postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands)
+ (try_replace_in_use, reload_cse_move2add): Likewise.
+ * reload1.c (calculate_elim_costs_all_insns): Likewise.
+ (note_reg_elim_costly): Likewise.
+ * rtlanal.c (insn_rtx_cost): Likewise.
+ * simplify-rtx.c (simplify_binary_operation_1): Likewise.
+ * stmt.c (lshift_cheap_p): Likewise.
+ * tree-ssa-loop-ivopts.c (seq_cost, computation_cost): Likewise.
+ * config/avr/avr.c (final_prescan_insn): Likewise.
+ * config/bfin/bfin.c (bfin_rtx_costs): Likewise.
+ * config/mips/mips.c (mips_binary_cost, mips_rtx_costs): Likewise.
+
+2011-08-18 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * rtl.h (set_rtx_cost, get_full_set_rtx_cost): New functions.
+ * auto-inc-dec.c (attempt_change): Use set_rtx_cost.
+ * cfgloopanal.c (seq_cost): Likewise.
+ * loop-invariant.c (create_new_invariant): Likewise.
+ * postreload.c (move2add_use_add2_insn, move2add_use_add3_insn)
+ (reload_cse_move2add): Use get_full_set_rtx_cost.
+
+2011-08-18 Richard Guenther <rguenther@suse.de>
+
+ * expr.c (get_inner_reference): Fix typo in last change.
+
+2011-08-18 Paolo Carlini <paolo.carlini@oracle.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ PR tree-optimization/49963
+ * hwint.c (absu_hwi): Define.
+ * hwint.h (absu_hwi): Declare.
+ * fold-const.c (fold_plusminus_mult_expr): Use absu_hwi instead
+ of abs_hwi.
+ * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Likewise.
+ * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Likewise.
+
+2011-08-18 Richard Guenther <rguenther@suse.de>
+
+ * expr.c (get_inner_reference): Sign-extend the constant
+ twos-complement offset before doing arbitrary precision
+ arithmetic on it.
+ * tree-ssa-structalias.c (get_constraint_for_ptr_offset): Likewise.
+ (get_constraint_for_1): Pass the offset of a MEM_REF unchanged
+ to get_constraint_for_ptr_offset.
+
+2011-08-17 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/50068
+ * config/sh/sh.c (sh_output_mi_thunk): Don't call dbr_schedule.
+
+2011-08-17 Richard Guenther <rguenther@suse.de>
+
+ * tree.h (convert_to_ptrofftype_loc): New function.
+ (convert_to_ptrofftype): Define.
+ * builtins.c (expand_builtin_bzero): Use size_type_node.
+ (fold_builtin_bzero): Likewise.
+ (std_gimplify_va_arg_expr): Build the BIT_AND_EXPR on the pointer.
+ * c-typeck.c (build_unary_op): Use convert_to_ptrofftype_loc.
+ * cgraphunit.c (thunk_adjust): Use fold_build_pointer_plus_loc.
+ (cgraph_redirect_edge_call_stmt_to_callee): Use size_int.
+ * expr.c (expand_expr_addr_expr_1): Use fold_build_pointer_plus.
+ * fold-const.c (build_range_check): Negate using the original
+ type.
+ (fold_unary_loc): Use fold_build_pointer_plus_loc.
+ * gimple-fold.c (gimple_adjust_this_by_delta): Use
+ convert_to_ptrofftype.
+ * gimplify.c (gimplify_self_mod_expr): Likewise.
+ * graphite-clast-to-gimple.c (clast_to_gcc_expression): Likewise.
+ (graphite_create_new_loop_guard): Likewise.
+ * graphite-sese-to-poly.c (my_long_long): Remove.
+ (scop_ivs_can_be_represented): Adjust.
+ * tree-cfg.c (verify_gimple_assign_unary): Use ptrofftype_p.
+ * tree-chrec.c (chrec_fold_plus_1): Use fold_build_pointer_plus.
+ * tree-loop-distribution.c (build_size_arg_loc): Use
+ size_type_node.
+ (generate_memset_zero): Simplify.
+ * tree-mudflap.c: Use fold_convert, not convert.
+ * tree-predcom.c (suitable_reference_p): Expand DR_OFFSET in
+ its own type.
+ (determine_offset): Likewise for DR_STEP.
+ (valid_initializer_p): Likewise.
+ * tree-profile.c (prepare_instrumented_value): Convert the pointer
+ to an integer type of same size.
+ * tree-scalar-evolution.c (interpret_rhs_expr): Do not refer
+ to sizetype without need.
+ * tree-ssa-address.c (tree_mem_ref_addr): Likewise.
+ * tree-ssa-loop-ivopts.c (find_bivs): Use convert_to_ptrofftype.
+ * tree-ssa-loop-manip.c (create_iv): Likewise.
+ (determine_exit_conditions): Adjust comment.
+ * tree-ssa-pre.c (create_expression_by_pieces): Use
+ convert_to_ptrofftype.
+ * tree-ssa-structalias.c (get_constraint_for_1): Likewise.
+ * varasm.c (array_size_for_constructor): Compute using double_ints.
+
+2011-08-16 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/spu/spu.c (spu_emit_branch_or_set): Avoid reverse tests
+ when generating an integer result where possible. Short-cut
+ comparison against 0 also for QImode.
+
+2011-08-16 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/spu/spu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.
+ * config/spu/spu-protos.h (spu_legitimize_reload_address): Add
+ prototype.
+ * config/spu/spu.c (spu_legitimize_reload_address): New function.
+ (spu_legitimate_address_p): Do not check displacement if the base
+ is an eliminable stack register.
+
+2011-08-16 Anatoly Sokolov <aesok@post.ru>
+
+ * config/m32c/m32c.h (PREFERRED_RELOAD_CLASS,
+ PREFERRED_OUTPUT_RELOAD_CLASS): Remove macro.
+ * config/m32c/m32c-protos.h (m32c_preferred_reload_class,
+ m32c_preferred_output_reload_class): Remove.
+ * config/m32c/m32c.c (m32c_preferred_reload_class): Make static.
+ Change rclass argument and return types to reg_class_t. Use
+ reg_class_subset_p instead of class_sizes.
+ (m32c_preferred_output_reload_class): Make static. Change rclass
+ argument and return types to reg_class_t.
+ (TARGET_PREFERRED_RELOAD_CLASS,
+ TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
+
+2011-08-16 Kai Tietz <ktietz@redhat.com>
+
+ * config/i386/mingw32.h (GOMP_SELF_SPEC): Add -pthread option.
+
+2011-08-16 Richard GUenther <rguenther@suse.de>
+
+ PR tree-optimization/50082
+ * tree-ssa-forwprop.c (combine_cond_expr_cond): Handle overflow
+ warnings here, instead of ...
+ (ssa_forward_propagate_and_combine): ... here.
+ (forward_propagate_into_comparison_1): Adjust.
+ (forward_propagate_into_comparison): Likewise.
+ (forward_propagate_into_gimple_cond): Likewise.
+ (forward_propagate_into_cond): Likewise.
+
+2011-08-16 Andreas Schwab <schwab@redhat.com>
+
+ * ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def
+ instead of ggc_alloc_zone_vec_rtvec_def.
+
+2011-08-16 Richard Guenther <rguenther@suse.de>
+
+ * tree.h (ptrofftype_p): New helper function.
+ * tree-cfg.c (verify_expr): Use ptrofftype_p for POINTER_PLUS_EXPR
+ offset verification.
+ (verify_gimple_assign_binary): Likewise.
+ * tree.c (build2_stat): Likewise.
+ * tree-chrec.c (chrec_fold_plus_poly_poly): Likewise.
+ (reset_evolution_in_loop): Likewise.
+ * tree-chrec.h (build_polynomial_chrec): Likewise.
+
+2011-08-16 Liang Wang <lwang1@marvell.com>
+
+ * ggc.h (ggc_alloc_rtvec_sized): Change arguments of
+ ggc_alloc_zone_vec_rtvec_def.
+
+2011-08-16 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (extract_range_from_multiplicative_op_1): New
+ helper factored out from ...
+ (extract_range_from_binary_expr_1): ... here. Re-structure
+ to not glob handling too different tree codes.
+
+2011-08-15 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/50006
+ * explow.c (allocate_dynamic_stack_space): Move suppress_reg_args_size
+ setting out to include allocate_stack named pattern as well.
+ * builtins.c (expand_builtin_apply): Add ARG_SIZE 0 note.
+ * stmt.c (expand_stack_restore): Likewise.
+
+2011-08-15 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/50082
+ * fold-const.c (maybe_canonicalize_comparison_1): Properly
+ convert the modified operand to the other operand type.
+ (fold_comparison): Call maybe_canonicalize_comparison_1 with
+ useless conversions stripped from comparison operands.
+
+2011-08-15 Richard Guenther <rguenther@suse.de>
+
+ * tree-vrp.c (value_range_nonnegative_p): Fix anti-range case.
+ (extract_range_from_unary_expr_1): Restructure.
+
+2011-08-15 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/50058
+ * tree-ssa-sccvn.c (vn_reference_lookup_3): Relax aggregate
+ copy matching.
+
2011-08-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
PR target/50022
(avr_reorg): Use them. Use next_real_insn instead of NEXT_INSN.
Use CONST_INT_P. Beauty.
-2011-08-12 David Li <davidxl@google.com>
-
- * cp/class.c (update_vtable_entry_for_fn): Set
- LOST_PRIMARY bit properly.
-
2011-08-12 Richard Henderson <rth@redhat.com>
PR rtl-opt/49994